● 要求具有定制能力的功能和操作,确认定制能力的有效性。
● 要求具有运行状态监控能力的功能,确认它们的有效性。
注:以正确操作、误操作模式、非常规模式和快速操作为框架设计测试用例,误操作模式有错误的数据类型作参数、错误的输入数据序列、错误的操作序列等。如有用户手册或操作手册,可对照手册逐条进行测试。
4)从吸引性方面
从吸引性方面考虑,可测试系统的人机交互界面能否定制。
4、效率
1)时间特性方面
从时间特性方面考虑,可测试系统的响应时间、平均响应时间、响应极限时间,系统的吞吐量、平均吞吐量,系统的周转时间、平均周转时间、周转时间极限。
注:响应时间指系统为完成一项规定任务所需的时间;平均响应时间指系统执行若干并行任务所需的平均时间;响应极限时间指在最大负载条件下,系统完成某项任务需要时间的极限;吞吐量指在给定的时间周期内系统能成功完成的任务数量;平均吞吐量指在一个单位时间内系统能处理并发任务的平均数;极限吞吐量指在最大负载条件下,在给定的时间周期内,系统能处理的最多并发任务数;周转时间指从发出一条指令开始到一组相关的任务完成的时间;平均周转时间指在一个特定的负载条件下,对一些并发任务,从发出请求到任务完成所需要的平均时间;周转时间极限指在最大负载条件下,系统完成一线任务所需要时间的极限。
在测试时,应标识和定义适合于软件应用的任务,并对多项任务进行测试,而不是仅测一项任务。
注:软件应用任务的例子,如在通信应用中的切换、数据包发送、在控制应用中的事件控制,在公共用户应用中由用户调用的功能产生的一个数据的输出等。
2)资源利用性方面
从资源利用性方面考虑,可测试系统的输入/输出设备、内存和传输资源的利用情况:
● 执行大量的并发任务,测试输入/输出设备的利用时间。
● 在使输入/输出负载达到最大的系统条件下,运行系统,测试输入/输出负载极限。
● 并发执行大量的任务,测试用户等待输入/输出设备操作完成需要的时间。
注:建议调查几次测试与运行实例中的最大时间与时间分布。
● 在规定的负载下和在规定的时间范围内运行系统,测试内存的利用情况。
● 在最大负载下运行系统,测试内存的利用情况。
● 并发执行规定的数个任务,测试系统的传输能力。
● 在系统负载最大的条件下和在规定的时间周期内,测试传输资源的利用情况。
● 在系统传输负载最大条件下,测试不同介质同步完成其任务的时间周期。
5、维护性
1)易分析性方面
从易分析性方面考虑,可设计各种情况的测试用例运行系统,并监测系统运行状态数据,检查这些数据是否容易获得、内容是否充分。如果软件具有诊断功能,应测试该功能。
2)易改变性方面
从易改变性方面考虑,可测试能否通过参数来改变系统。
3)易测试性方面
从易测试性方面考虑,可测试软件内置的测试功能,确认它们是否完整和有效。
6、可移植性
1)适应性方面
从适应性方面考虑,可测试:
● 软件对诸如数据文件、数据块或数据库等数据结构的适应能力。
● 软件对硬件设备和网络设施等硬件环境的适应能力。
● 软件对系统软件或并行的应用软件等软件环境的适应能力。
● 软件是否已移植。
2)易安装性方面
从易安装性方面考虑,可测试软件安装的工作量、安装的可定制性、安装设计的完备性、安装操作的简易性、是否容易重新安装。
注:安装设计的完备性可分为三级
a)最好:设计了安装程序,并编写了安装指南文档。
b)好:仅编写了安装指南文档。
c)差:无安装程序和安装指南文档。
注:安装操作的简易性可分为四级。
a)非常容易:只需启动安装功能并观察安装过程。
b)容易:只需回答安装功能中提出的问题。
c)不容易:需要从表或填充框中看参数。
d)复杂:需要从文件中寻找参数,改变或写它们。
3)共存性方面
从共存性方面考虑,可测试软件与其他软件共同运行的情况。
4)易替换性方面
当替换整个不同的软件系统和用同一软件系列的高版本替换低版本时,在易替换性方面,可考虑测试:
a)软件能否继续使用被其替代的软件使用过的数据。
b)软件是否具有被其替代的软件中的类似功能。
5)依从性方面
当软件在功能性、可靠性、易用性、效率、维护性和可移植性方面遵循了相关的标准、约定、风格指南或法规时,应酌情进行测试。
上述基于软件质量特性/子特性的系统测试内容对应到传统的软件测试类型如下所示:
功能测试。目标:对产品的功能进行测试,检验是否实现、是否正确实现;方法:覆盖产品的功能;工具:回归测试时候可以使用工具。
性能测试。目标:对产品的性能进行测试,检验是否达标、是否能够保持;方法:覆盖系统的性能需求,一般和负载测试结合使用;工具:在需要大访问量时候尤其需要使用工具。
负载测试。目标:在人为设置的高负载(大数据量、大访问量)的情况下,检查系统是否发生功能或者性能上的问题;方法:人为生成大数据量,并利用工具模拟频繁并发访问;工具:一般需要使用工具。
压力测试。目标:在人为设置的系统资源紧缺情况下,检查系统是否发生功能或者性能上的问题;方法:人为减少可用的系统资源,包括:内存、硬盘、网络、CPU占用、数据库反应时间等;工具:一般需要使用工具。
疲劳测试。目标:在一段时间内(经验上一般是连续72小时)保持系统功能的频繁使用,检查系统是否发生功能或者性能上的问题;方法:人为设置不同功能的连续重复操作;工具:一般需要使用工具。