文档介绍:软件工程
第6讲 软件测试
精选ppt
第6讲 软件测试
软件测试的基本概念
测试的原则、类型和文档
黑盒测试方法
白盒测试方法
软件测试的基本过程
软件纠错
精选ppt
配置
包括测试计划、测试用例、测试驱动程序等。
测试工具
为测试的实施提供某种服务,以减轻完成测试任务中的手工劳动。
测试工具
测试数据自动生成程序
静态分析程序
动态分析程序
测试结果分析程序
驱动测试的测试数据库等等。
精选ppt
分析测试结果
测试完成后,要对所有的测试结果进行分析,如果发现软件有错误,就要排错并修正有关文档,接着再测试,直到通过为止。
如果经常出现需要修改设计的严重错误,则软件质量与可靠性值得怀疑,需进一步测试。
如果测试未发现错误,则应重新审查测试配置。
精选ppt
测试的原则、类型和文档
1)测试原则
(1)所有的测试都应追溯到用户需求。
软件测试的目标在于揭示错误。而最严重的错误是那些导致程序无法满足需求的错误。
(2)充分注意测试中的群集现象。
在被测程序段中,若发现错误数目多,则残存错误数目也比较多。因此,应当对错误群集的程序段进行重点测试,以提高测试投资的效益。
精选ppt
(3)测试应从“小规模”开始,逐步转向”大规模”。
(4)测试应该由非程序员或非开发机构来进行。
(5)对于非法的和非预期的输入情况也要象正常测试一样,编写测试用例。
检查程序是否做了要做的事仅仅是成功的一半,另一半是看程序是否做了不该做的事。
(6)妥善保存测试计划、测试用例、出错统计和最终分析报告。
回归测试
精选ppt
2)软件测试方法
(1)静态分析:通过对被测程序的静态检查,发现代码中潜在的错误。静态分析包括2种方式:
① 静态分析器分析(自动方式);如PMD 扫描java源代码,查找潜在的问题:
可能的bugs,如空的try/catch/finally/switch声明
死亡的代码,没有使用的本地变量,参数和私有方法
过于复杂的表达式,如不必要的if表达式
重复的代码,拷贝、粘贴的代码
② 代码评审(人工方式),包括代码会审、走查、办公桌检查等。
(2)动态测试(简称测试):将被测程序在机器上运行来发现程序中的错误。动态测试包括2类方式:
① 黑盒测试(测试程序的功能)
② 白盒测试(测试程序的结构)
精选ppt
3)测试的文档
(1)测试计划
主体是测试内容说明。包括:测试项目名称,各项测试的目的、步骤、进度,测试用例的设计等。
(2)测试报告
主体是测试结果。包括:测试项目名称,实测结果与期望结果的比较,发现的问题,测试达到的效果等。
(3)测试用例
精选ppt
(1)黑盒测试的基本概念
不考虑程序的内部结构和处理过程,只在程序的接口处进行测试,以检查程序功能是否能按规格说明书中的要求正常实现。
黑盒测试又称为功能测试,其主要目的是为了发现程序在功能方面的错误。
黑盒测试方法
精选ppt
黑盒法分类
等
价
类
化
分
法
边
界
值
分
析
法
错
误
猜
测
法
因
果
图
法
精选ppt
(2)等价类划分法
基本思想:根据程序的I/O特性,将程序的输入域划分为有限个等价区段 —“等价类”,并从等价类中选出最有“代表性”的用例。
等价类:是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的。
测试某等价类的代表值就等价于对这一类其它值的测试。
如果一个测试用例不能检测出某个错误,那么等价类中其它测试用例也不能发现这一错误。
等价类分为:
有效等价类 — 对于程序的规格说明是合理的、有意义的输入数据构成的集合。
无效等价类 —对于程序的规格说明,是不合理的,是没有意义的输入数据构成的集合。
精选ppt
等价类划分法的步骤
①划分等价类
合理的(有效的)、不合理的(无效的)2类
②找出测试用例
给每个等价类规定一个惟一的编号;
设计一个新的测试用例,使其尽可能多地覆盖未被覆盖的有效等价类,直到所有合理等价类被覆盖完为止;
设计一个测试用例,使其仅仅覆盖一个未被覆盖的无效等价类,直到所有不合理等价类被覆盖完为止。
精选ppt
例 如下是一个程序的功能描述,用等价类划分法设计测试用例。
功能描述:某城市的电话号码由3部分组成。假定被测程序能接收一切符合下述规定的电话号码,拒绝所有不符合规定的电话号码。
地区码:空白或3位数字;
前缀:非‘0’或‘1’开头的3位数字;
后缀:4位数字。
输入条件
合理的等价类
不合理的等价类
地区码
空白(1) 3位数字(2)
有非数字字符(5) 少于3位数字(6) 多于3