更高级别的测试适用于软件产品
1. 功能测试
功能测试的是一个试图发现程序与其外部规格说明之间存在不一致的过程。
外部规格说明是一份从最终用户的角度对程序行为的精确描述。
功能测试通常是黑盒测试。
所使用的等价类方法、边界值分析方法、因果图分析方法和错误猜测方法尤其适用于功能测试
2.系统测试
系统测试的目标是为了证明软件产品与其初始目标不一致。
1.系统测试并不局限于系统。如果一个产品是一个程序,系统测试就是试图说明程序作为一个整体是如何不满足其目标的过程。
2.如果产品没有一组书面的、可度量的目标,系统测试也就无法进行。
需要重点关注:在设计外部规格说明过程中所犯的转换错误。因为将需求转换成设计目标时最容易出错。
通过分析目标文档来设计系统测试,分析用户文档来阐明测试用例:
1.将程序与其目标和用户文档相比较
2.将用户文档与程序目标相比较
系统测试的常用类型
2.1能力测试
判断目标文档中提及的每一项能力是否都确实已经实现。
2.2容量测试
是使程序经受大容量数据的检验。
测试的目的是为了证明程序不能处理目标文档中规定的数据容量
2.3强度测试
使程序承受高负载或强度的检验。
强度是指在很短时间间隔内达到的数据或操作的数量峰值。
适用于在可变负载下运行的程序,以及交互式程序、实时程序和过程控制程序。
2.4可用性测试
又称为用户体验测试
2.5安全性测试
是为了设计测试用例来突破程序安全检查的过程。
2.6性能测试
性能目标为在特定负载和配置环境下程序的相应和吞吐率。测试用例用来说明程序不能满足其性能目标。
2.7存储测试
可以描述为程序使用的内存和辅存的容量,以及临时文件或溢出文件的大小,应设计测试用例来证明这些存储目标没有得到满足。
2.8配置测试
软件如果运行在多种操作系统下,应该对该程序面向的所有操作系统进行测试。
2.9兼容性/转换测试
比如软件升级
2.10安装测试
2.11可靠性测试
2.12可恢复性测试
诸如操作系统、数据库管理系统和远程控制系统等软件通常有可恢复性目标,说明系统如何从程序错误、硬件失效和数据错误中恢复过来。
测试目标是证明系统不能满足在平均恢复时间最小MTTR的服务合同。
2.13服务/可维护性测试
软件有可能有服务的或可维护的目标。这些目标可能定义了系统提供平服务辅助功能,包括存储转存程序或诊断程序、调试明显问题的平均时间、维护过程以及内部业务文档的质量等。
2.14文档测试
检查用户文档的正确性、清晰性。
在文档中的任何范例都应编写成测试用例,并提交给程序。
2.15过程测试
很多软件系统可能需要一些人工操作,比如系统操作员、数据库管理员、或最终用户的操作过程都需要进行测试
2.16系统测试的执行
执行系统测试的人员:
1.几位专业的测试专家
2.一或两位最终用户代表
3.一位人类工程师
4.该程序的主要分析人或设计者
3.验收测试
验收测试是将程序与其最初的需求及最终用户的需要进行比较的过程。
4安装测试
是为了发现安装过程中出现的错误。
安装测试应由软件系统机构来开发,作为软件的一部分发布,在系统安装完成之后进行。测试用例需要检查以确认已选的选项集合互不冲突,系统的所有部件全部存在,所有的文件已经创建并包含必须的内容,硬件配置妥当等。