软件测试第三章软件测试流程.ppt

S2 (1)经过检验,软件功能、性能及其它要求都已满足需求规格说明书的规定,是一个合格的软件。 (2)经过检验,发现与需求说明书有相当的偏离,我们得到一个缺陷清单,这就需要开发部门和顾客进行协商,找出解决的办法。 确认任务 确认是指决定最后的软件产品是否正确无误。 比如,开发的软件是否符合软件需求规格说明和用户要求,输出的信息是否是用户想要的信息,在将来的实际使用环境中能否正确稳定地运行,是否存在隐患等,这自然包含了对它在功能、性能、接口以及限制条件等方面满足需求程度的评价。 测试覆盖 测试覆盖用来衡量软件产品的被测程度 测试覆盖分为:需求覆盖、功能覆盖和逻辑覆盖。 逻辑覆盖很重要,因为: 1)逻辑覆盖可以间接地提高功能覆盖; 2)对逻辑路径的测试是必要的,而逻辑路径一般无法从外部功能看出来。 逻辑覆盖包括:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖和路径覆盖,最常用、最简单的形式是语句覆盖,即覆盖被测程序中语句的百分比。 基于需求的测试:采用黑盒测试策略,在不知道详细设计规格说明或代码的情况下对用户需求进行测试。基于需求的测试根据功能设计规格说明设计测试用例。 基于功能的测试:采用黑盒策略,根据功能设计规格说明,采用等价类划分、边界值分析和故障猜测等方法设计测试用例。 基于内部的测试:只能采用白盒测试策略,但可采用功能设计规格说明制订测试计划。一但采用白盒测试,便可通过一系列的技术确保系统的内部各部分获得充分的测试并且达到足够的逻辑覆盖。 确认测试策略 ● 测试是为了发现故障, 而不是为了显示故障不存在。 ● 测试最困难的问题之一是不知道何时终止测试。 ● 避免使用未经计划、不能重复使用且用后即扔的测试用例。 ● 测试用例的一个重要组成部分是预期输出或结果,仔细比较每一次测试执行的实际结果和预期结果。 ● 测试用例必须考虑有效、无效、预期和非预期的输入条件。 ● 经验较少的测试人员倾向于只从输入角度设计测试用例。经验丰富的测试人员能够生成预期输出所要求的输入。 实施确认测试时应考虑的基本原则: 1.低层测试 低层测试涉及对程序的各个单元或模块进行测试,包括单元测试和集成测试。 单元测试 集成测试 综合测试策略 高层测试涉及对整个产品的测试。为保证测试的客观性,测试最好在开发组织之外由独立的测试机构进行。高层测试的形式包括: 可用性测试 功能测试试 系统测试 验收测试 高层测试 回归测试 回归测试则是对程序进行测试以确定是否因故障修复而引入了新的故障。 回归测试不是一种新的测试活动,它是为检查是否因修复故障引入了新的故障而重新执行某些或所有测试用例的过程。 评估测试 软件测试的主要评测方法有测试覆盖、质量评测和性能评测。测试覆盖是对测试完全程度的评测,由测试需求和测试用例的覆盖或已执行代码的覆盖表示。质量评测是对软件系统的可靠性、稳定性以及性能的评测,对测试结果的评估和对测试过程中确定的变更请求进行分析。性能评测检测软件运行时的性能,如传输的最长时间限制、传输的错误率、计算的精度、相应的时限和恢复时限等。 5类常用终止测试的标准和依据。 标准1:测试超过了预定时间,则终止测试。 标准2:执行了所有的测试用例,但并没有发现故障,则终止测试。 标准3:使用特定的测试用例设计方法作为判断测试停止的基础。 标准4:给出测试停止的要求,例如发现并修改了100个软件故障。 标准5:根据单位时内查出故障的数量决定是否停止测试。 自底向上集成测试 自底向上测试 d 6 M5 d 1 d 2 d 3 M11 d 5 d 4 d 6 M5 d 1 M5 d 1 d 2 d 2 d 3 d 3 d 5 (a) (b) (c) (d) (e) (f) d 4 d 4 M7 M9 M10 M12 第一步顺序地或并行地测试M5,M7, M9,M10, M11和M12中的部分模块或全部模块。 每一模块都需要专门的驱动模块:这个驱动模块可以接受测试输入,可以调用正在测试的模块,并且可以显示结果或将实际输出与期望输出进行比较。 影响测试顺序的因素是模块的关键性质。如果可以确定模块M4和M6是关键的,那么自底向上增式测试的中间状态可能如图所示。 优点:自底向上测试方法不需要桩模块,测试用例的设计亦相对比较简单,也不存在还没把前面的模块完全测试却又开始测试另一模

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档