软件测试概述

Posted on 2016-10-10 16:48  南宫羽香  阅读(456)  评论(0编辑  收藏  举报

1.缺陷的表现

  • 软件未实现产品说明书中要求实现的功能
  • 软件出现了产品说明书中制定不会出现的错误
  • 软件超出实现了产品说明书中提到的功能
  • 软件未实现产品说明书中虽未说明明确指出但应该实现的目标
  • 软件难以理解、不易使用或者最终用户认为不好

2.软件缺陷产生的原因

  • 软件需求分析不够全面、准确是导致软件缺陷的最主要原因

软件需求分析的最主要任务是确定待开发软件的功能要求、性能要求及运行环境约束。

  • 软件设计和编码过程中的失误也会导致软件缺陷的产生

3.软件测试的衡量标准

  • 测试是为了发现程序中的错误而执行程序的过程。
  • 好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案。
  • 成功的测试是发现了至今为止尚未发现的错误的测试。
  • 测试并不仅仅是为了找出错误。通过分析错误产生的原因和错误的发生趋势,可以帮助项目管理者发现当前软件开发过程中的缺陷,以便及时改进。这种分析也能帮助测试人员设计出有针对性的测试方法,改善测试的效率和有效性。
  • 没有发现错误的测试也是有价值的,完整的测试是评定软件质量的一种方法。
  • 另外,根据测试目的的不同,还有回归测试、压力测试、性能测试等,分别为了检验修改或优化过程是否引发新的问题、软件所能达到处理能力和是否达到预期的处理能力等。

4.软件测试中的认识误区

  • 测试和调试是一回事

测试是一个有计划、可重复的过程目的是为了发现错误和缺陷,而调试是一个随机的、不可重复的过程目的是为了寻找错误的原因。

  • 可以对软件进行穷举测试 
  • 若交付使用的软件有缺陷,是测试人员的失职

交付使用的软件有缺陷,与多方面的人员都有关系,如系统分析人员、设计人员、编码人员、测试人员。软件开发过程中任何一个环节出现问题,都有可能是软件出现缺陷。

  • 关注测试执行而忽略测试用例的设计

若不注重测试用例的设计,很可能会遗漏有价值的测试用例,导致设计出的测试用例不够准确,从而不可能对软件进行充分、有效的测试。

  • 测试比编程容易的多

测试人员应具有细致沉稳的性格和很强的专业素质,对被测试的软件的功能及架构十分清楚,测试人员还要能在无法实现穷举测试的前提下编写若干有价值的测试用例,以尽可能的揭露软件中的错误和缺陷;在进行自动化测试时,测试人员还应有编写脚本的能力。

  • 测试是编码之后进行的工作

软件测试应成为一个独立的流程,可以贯穿到软件开发的其他各个流程中,其次,测试是可迭代的过程。

  • 自动化测试是万能的
  • 测试是一种破坏性工作