1.1按开发阶段,单元测试,又称为模块测试,是针对软件设计的最小单位——程序模块
1.集成测试:也称组装测试,集成测试是检验程序单元或部件接口关系,逐步集成为符合概要设计要求的程序部件或整个系统。
2.确认测试:又称为有效性测试,又称为冒烟测试,是在模拟环境下,验证软件的所有功能和性能及其他特性是否与用户的预期要求一致。
3.系统测试:系统测试是在真实的系统运行的环境下,包括硬件外设,网络和系统软件,支持平台等正确配置,连结,并且最终满足用户的所有需求。
特性:
全面的:系统所有功能的测试,模拟所有软件用户的操作。
全方位的:和硬件系统的联系;和系统软件的联系;和其他软件的关系。4.
4.验收测试:
一般有三种验收测试的主体:
α测试:软件的开发商自己进行的交付前的测试。
β测试:软件的需求方。
γ测试:第三方的软件测试(外包)。
1.2按测试技术
5.黑盒测试法:把测试对象看成一个黑盒子,在程序界面处进行测试。
6.白盒测试:可以把程序看成是装在一个透明的盒子里,检查是否所有的结构及路径都是正确的,检查软件内部动作是否按照设计说明的规定正常进行,白盒测试又称结构测试。
7.灰盒测试
介于白盒测试与黑盒测试之间的测试。
1.3按代码运行
8.静态测试是指不实际运行被测对象,而只是静态地检查程序代码、界面或者文档可能存在错误过程。
代码测试:主要测试代码是否符合相应的标准和规范
界面测试:主要测试软件的实践界面与需求中的说明是否相符
文档测试:主要测试用户手册和需求说明说明是否真正符合用户的实际需求。
9.动态测试:
动态测试是指实际运行被测对象,输入相应的测试数据,检查实际输入结果和预期结果是否运行程序。
1.4按软件特性分类
10.功能测试:是黑盒测试的一方面,它检查实际软件的功能是否符合用户需求
1.逻辑功能测试
2.界面测试
3.易用性测试
4.安装/卸载测试
5.兼容性测试
11.性能测试:功能另一个指标,某一功能在指定的时间、空间条件下,是否使用软件的性能包括很多方面,主要有时间性能和空间性能两种.
12.安全性测试:验证安装在系统内的保护机制是否在实际应用中中对系统进行保护,使之不被非法入侵,不受各种因素的干扰。
1.5其他测试类型
13.回归测试:是指软件的新版本测试时,重复执行之前某一个重要版本的所有测试用例。
1.目的:验证之前版本产生所有缺陷已全部被修复
2.确认修复这些缺陷没有引发新的缺陷。
14.冒烟测试:对新版本进行系统大规模的测试之前,先验证一下软件的基本功能是否实现,是否具备可测试性。也叫可测性测试。
15.随机测试:是指测试人员基于经验和直觉的测试,发现一些边缘性的错误。
16.猴子测试:把自己看成不懂产品的笨蛋或小动物,随便乱点,没有任何主观和想法参与进来,可能会造成意想不到的操作造成错误的结果。
1.6软件测试原则
17.所有测试标准都是建立在用户需求之上。
18.软件测试必须基于”质量第一“的思想去开展各项工作,当时间和质量冲突时,时间服从质量。
19.事先定义好产品的质量标准,只有有了质量标准,才能根据测试结果,对产品质量进行分类和评估。
20.软件项目一启动,软件测试也就是开始,而不是等程序开发完成,才开始测试。
21.穷举测试是不可能的
22.第三方进行测试会更客观,更有效。
23.软件测试计划是做好软件测试工作的前提。
24.测试用例是设计出来的,而不是先写出来的,要根据测试的目的采用相应的方法去设计测试用例,从而提高测试的效率,更多的发现错误,提高程序的可靠性。
25.对于发现错误较多的程序段,应进行更深入。一般来说,一段程序中已经发现的错误越多,存在错误概率就越大。
26.重视文档,妥善保存一切测试过程文档(测试计划、测试用例、测试报告等)
27.应当把”尽早和不断地测试“作为测试人员的座右铭。
28.测试应从小规模逐渐转到大规模
29.不可将测试用例置之度外,排除随意性。
30.必须彻底检查每一个测试结果。
31.一定要注意测试中的错误集中发生现象,这和程序员的编程水平和习惯有很大关系。
32.对测试错误结果一定要有一个确认的过程。