文档介绍:软件产品检验员
软件开发基础知识
应用程序的开发
软件测试知识
常见的测试方法
测试用例的设计与测试实施
一、软件测试的目的和重要性
因为开发工作的前期不可避免地会引入错误,测试的目的是为了发现和改正错误。
软件测试
1、软件测试的开销大
软件测试的开销大约占总成本的30%-50%。例如:APPOLLO登月计划,80%的经费用于软件测试。
2、不能进行“穷举”测试
只有将所有可能的情况都测试到,才有可能检查出所有的错误。但这是不可能的。
例:程序P有两个整型输入量 X、Y,输出量为Z,在32位机上运行。所有的测试数据组(Xi,Yi)的数目为: 232*232 = 264 。1毫秒执行1次,共需5亿年。
3、软件测试难度大
软件测试的特点
根据上述分析,既然不能进行“穷举”测试,又要查出尽可能多的错误,软件测试工作的难度大。只有选择—高效的测试用例。
1、尽量不由程序设计者进行测试。
2、关键是注重测试用例的选择。
输入数据的组成(输入数据、预期的输出结果)
既有合理输入数据,也有不合理的输入数据。
用例既能检查应完成的任务,也能够检查不应该完成的任务。
长期保存测试用例。
3、充分注意测试中的群集现象。
软件测试的基本原则
测试的基本步骤
模块测试
整体测试
功能测试
预测试
系统测试
验收测试
安装测试
概要设计审查
详细设计审查
代码审查
测试
(单元测试)
(组装测试)
(有效性测试)
(确认测试)
{
{
软件测试方法分为两类:
静态分析、动态测试
一、静态分析方法
以人工的、非形式化的方法对程序进行分析和测试。主要方法包括:桌前检查、 代码会审、步行检查。
软件测试方法
二、动态测试方法
通过选择适当的测试用例,执行程序,进行测试。
常用的方法:
1、白盒法
分析程序的内部逻辑结构,注意选择适当的覆盖标准,设计测试用例,对主要路径进行尽可能多的测试。
2、黑盒法
不考虑程序的内部结构与特性,只根据程序功能或程序的外部特性设计测试用例。