集成测试是将已经分别通过测试的单元按设计要求组合起来再进行测试,以检查这些单元接口是否存在问题。
系统测试一般由若干个不同测试组成,目的是充分运行系统,验证系统各部件能否正常工作并完成所赋予的任务。
2.集成测试前的准备
测试计划(在系统设计阶段开始制定)
测试内容
3.集成模式
测试方法(非渐增式测试模式、渐增式测试模式)
4.集成测试的模式
非渐增式测试模式,如大棒式;
渐增式测试模式;
5.两种模式的优缺点:
工作量(渐增式工作量较大,编码多)
错误诊断(渐增式发现错误早,好诊断)
渐增式测试更彻底
渐增式需要较多的机器时间
使用非渐增式可进行并行测试
6.集成方法
自顶向下
自底向上
混和模式
大棒和三明治
两种辅助模块
驱动模块
桩模块
7.自顶向下和自底向上集成方法
自顶向下法
从主控模块开始,沿着软件的控制层次向下移动,逐渐把各个模块结合起来。
优缺点
不需要测试驱动
能早期发现上层模块的接口错误
需要桩模块
底层模块中错误发现较晚
早期不能重分发挥人力。
自底向上法
自底部向上测试从“原子”模块开始集成以进行测试
混合策略
对软件结构中较上曾使用“自顶向下”法,对软件结构中较下层使用“自底向上”法
8.大棒与三明治集成方法
大棒集成方法
先对每个子模块进行测试,然后将所有模块全部集成起来一次性进行集成测试。
三明治集成方法
9.集成测试中的功能测试区分于单元测试中的功能测试;单元测试中功能测试目的是保证所测试的每个独立模块在功能上市正确的,主要从输入条件和输出结果进行判断。
集成测试前后的功能测试,不仅考虑模块之间的相互作用,而且考虑系统应用环境,其衡量标准是实现产品规格说明书上所要求的内容。
10.功能测试的目的和方法
功能测试的目标是满足用户功能的需求。
功能测试的方法
等价类划分法
边界值分析法
错误推测法
因果图法
组合分析法
组合分析法是一种基于每对参数组合的测试技术,考虑参数之间的影响是主要的错误来源,大多数的错误起源于简单的参数组合。
组合分析法优点是:实现的成本底,维护成本底,易于自动化。
11.系统测试
系统测试是在集成测试之后,与计算机硬件、和某些支持软件、数据和人员等系统元素结合起来,在实际运行环境下对计算机系统进行严格的测试,来发现软件的潜在问题,保证系统的运行。
系统测试区别于功能测试。
功能测试主要是验证软件功能的实现情况,不考虑各种环境以及非功能问题。
12.系统测试的内容
也称强度测试、负载测试。压力测试时模拟实际应用的软件环境及用户使用过程的负荷,长时间或超大负荷地运行测试软件,来测试被测系统的性能、可靠性、稳定性等。
容量测试
预先分析出反映软件系统应用特长的某项指标的极限量。
通过测试确定系统运行时的性能表现,如得到运行速度、响应时间、占有系统资源等方面的系统数据。
检查系统对非法侵入的防范能力。安全测试期间人员假扮非法入侵者,采用各种办法试图突破防线。
容错测试
主要检查系统的容错能力。当系统出错时,能否在指定时间间隔内修正错误并重新启动系统。
12.1压力测试
压力测试——系统非正常承载能力的测试;
压力估算——可选实际峰值的1.5-2倍;
测试环境的准备;
问题分析;
累积效应;
12.2容量测试
容量测试——对预先期望系统特性极限指标测试。系统在极限值状态下能保持主要功能正常。
容量测试完成的标准是:所计划的测试已经全部执行,而且达到或超出指定的系统限制是没有出现故障。
12.3性能测试
性能测试——真实系统中真实可靠地测试系统的性能。
12.4三种测试的比较
压力测试重点在于发现系统功能性不易发现的错误;
容量测试着重于系统是否达到预计的目标;
性能测试着重于在苛刻环境中衡量资源的使用,诊断系统效率低和系统故障的原因。
12.5安全性测试
两种级别的安全性:
应用程序级别的安全性;
系统级别的安全性;
测试目标
测试范围
完成标准
12.6可靠性测试
可靠性是产品在规定的条件下和规定的时间内完成规定功能的能力
可靠性测试的三要素:
规定时间
规定的环境条件
规定的功能
12.7容错测试
容错测试是检查软件在异常条件下自身是否具有防护性的措施或某种灾难恢复的手段和能力。
在规定的时间内能否修正错误并更新或启动系统。
13.回归测试