- 1、本文档共61页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(1)什么是软件测试?其目的是什么?;(2)什么是成功的测试?什么是失败的测试?;(4)穷举测试能够把所有的错误找完吗?;(5)通过测试能够证明软件无错吗?;(6)测试的基本工作有哪些?;测试计划示例;(7)什么是测试用例?;(8)测试由谁来完成?;(9)测试与纠错有何关系?;(10)纠错由谁来完成?;;6.2 测试的原则、类型和文档;(3)测试应从“小规模”开始,逐步转向”大规模”。
(4)不但要检查程序是否做了要做的事,还要检查程序是否做了不该做的事。
(5)严格执行测试计划,做好测试记录,如测试用例、出错统计和最终分析报告。
不要忘记回归测试 ;2)软件测试方法
(1)静态分析:
① 静态分析器分析(自动方式);如Jtest扫描java源代码,查找潜在的问题:
② 代码评审(人工方式)
(2)动态测试(简称测试):将被测程序在机器上运行来发现程序中的错误。
① 黑盒测试(测试程序的功能)
② 白盒测试(测试程序的结构) ;3)测试的文档;黑盒测试法;黑盒测试法;(2)等价类划分法
基本思想:根据程序的I/O特性,将程序的输入域划分为有限个等价区段 —“等价类”,并从等价类中选出最有“代表性”的用例。
等价类:是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的。
测试某等价类的代表值就等价于对这一类其它值的测试。
如果一个测试用例不能检测出某个错误,那么等价类中其它测试用例也不能发现这一错误。;等价类分类;例 如下是一个程序的功能描述,用等价类划分法设计测试用例。;测试用例的设计:;(3)边界值分析
基本思想:
人们从长期的测试工作中发现,大量的错误是发生在输入或输出范围的边界,而不是在输入范围的内部。
因此,针对各种边界情况设计测试用例,可以查出更多的错误。;边界条件
通常输入等价类与输出等价类的边界,就是应着重测试的边界情况。
应当选取正好等于,刚刚大于,或刚刚小于边界的值做为测试数据
不是选取等价类中的典型值或任意值做为测试数据。;边界值分析方法与等价类划分方法的区别:
边界值分析不是从某等价类中随便挑一个作为代表,而是使这个等价类的每个边界都要作为测试条件。
边界值分析不仅仅考虑输入条件,同时还要考虑输出条件(即输出等价类)。;例 边界值分析
模块bubblesort(a,n)是对数组a中的n个整型数从小到大进行排序。假设n为10。
那么可以用5组数据进行测试:
0个数据
1个数据
9个数据
10个数据
11个数据
;常见的边界值;(4)错误猜测法
基本思想:
根据经验或直觉推测程序中可能存在的各种错误,从而有针对性地编写检查这些错误地测试用例。
例:模块bubblesort(a,n)是对数组a中的n个整型数从小到大进行排序。假设n为10。
那么可以用3组数据进行测试:
0个数据
已经从小到大排好序的10个数据
从大到小的10个逆序数据;(5)因果图法
等价类划分和边界值分析方法,都是着重考虑输入条件,而未考虑输入条件之间的联系。
因果图法适合于多种条件组合的动态测试方法,这就是——把输入条件视为“因”,把输出条件视为“果”,采用逻辑图的形式来表达功能说明书中输入条件的各种组合与输出的关系。
因果图方法最终生成的是判定表,它适合于检查程序输人条件的各种组合情况。;因果图方法实例;;把因果图转换为判定表;白盒测试法—介绍三种方法;白盒测试;例子;public void Main()
{
System.out.println(start main function:path a...);
int A,B,X;
if(A1 and B==0){
X=X/A;
System.out.println(path c);
} else {
System.out.println(path b);
}
if(A==2 or X1){
X=X+1;
System.out.println(path e);
} else {
System.out.println(path d);
}
System.out.println(end main function.);
};判定覆盖法(分支覆盖法);;;;A1
A1;;测试大纲;;测试问题卡 --测试员:;上表解释;6.5 软件测试的基本过程;(1)单元测试
单元测试的目的
在于发现各模块内部可能存在的各种差错
从程序的内部结构出发设计测试用例。
为提高效率,单元测试可以并行地独立进行。
通常是白盒测试;单元测试的内容
;单元测试的“测试环境”
考虑到被测模块与其它模块的联系,因此测试时需要使用两类辅助模块(驱动模块、桩模块)来模拟其他模块。;驱动模块和桩模块
文档评论(0)