一、按开发阶段划分
(1)单元测试
(2)集成测试
(3)系统测试
(4)集成测试
二、按查看代码分类
(1)黑盒测试
定义:是一种功能测试,测试中把测试的软件当成一个盒子,不关心盒子内部结构是什么,只关心软件的输入和输出。
例如:一个计算器,输入:1+1 输出:2,正确;结果不是2就是bug
(2)白盒测试
定义:是一种结构测试,透明测试,逻辑测试,或是基于代码测试。指打开盒子去研究里面的源代码和程序结果,如:
(3)灰盒测试
介于黑盒测试和白盒测试之间的一种,灰盒测试多用于集成测试,不仅关注输出输入正确性,还关注程序内部的情况
三、按是否运行划分
1,静态测试
不运行被程序本身,仅通过分析源代码的语法、结构来检查程序的正确性,包括需求软件设计说明书,文档等
比如:灯泡不通电看外观,汽车不发动看外观,颜色
2,动态测试
指通过运行被测程序,检查运行结果与与测试结果的差异,并分析运行效率,正确性,健壮性等。
比如:灯泡通电看明亮程度,汽车发动观察发动机效率等
四、按测试对象分类
1,功能测试
2,性能测试
3,安全测试
4,兼容性测试
五、按照测试实施对象组织划分
(1)alpha 内部测试
(2)beta甲方测试
(3)第三方测试
找第三方公司进行测试
六、按是否手工测试
1,手工测试
手工测试就是一个个的手动点击用例,去执行用例,然后关注测试结果和测试用例是否一一对应。
缺点:执行效率慢,量大容易出错
2,自动化测试
定义:通过工具或代码代替手工测试
ui自动化、接口自动化
七、测试区域分类
1,本地化测试(中国)
2,国际化测试
a,语言
b,日期
c,金额
d,外观
e,度量单位