一、按测试对象进行分类
1.白盒测试:这种测试只关心源代码,不关心外在的界面是否OK,只关注底层代码功能实现,同时逻辑正确。
2.黑盒测试:这种测试是指软件外在的主体功能是否可用。
(1)功能测试:
1.逻辑功能
2.界面功能
3.易用性功能
4.安装测试
5.兼容性测试
(2)性能测试:
1.一般性能
2.稳定性
3.负载
4.压力
5.时间,空间性能
3.灰盒测试:介于二者之间(接口测试)
4.以上三种方法中的盒指的是被测对象
二、按测试对象是否执行分类
1.静态测试:指测试不运行
2.动态测试:将软件运行在真实的环境中测试
三、按测试手段进行分类
1.手工测试:由测试人员手动测被测对象进行验证,优点是可以灵活的改变测试操作及环境
2.自动化测试:所谓自动化主要有两种形式,一种是自己写测试脚本,另外一种是通过第三方的工具对被测试的对象进行验证测试
四、按测试阶段划分
软件的开发会依据响应的开发模型,则测试级别指的就在这个模型当中我们人为定义的开发步骤,其中对于测试来说我们最常见的一种级别分类如下:
1.单元测试: 在软件测试中单元指的就是组成软件最小的底层代码机构,一般是类,函数,组件(当下的软件测试行业,不会刻意需求测试人员对源代码进行测试)
2.集成测试:将多个单元模块组合在一起,然后验证他们之间沟通的“”桥梁“”是否能正常工作(接口测试)
3.系统测试:这是当前行业做的最多的一个测试,由测试人员充当用户然后对软件的功能主体进行测试
4.验证测试:
(1) a测试-阿尔法
(2)b测试--贝塔
(3)UAT-测试 由客户派出业务非常精通的人使用该软件,从而对功能进行测试
(4)验收测试用核心就是让用户为当前软件“购买”
五、按测试其他的划分
1.回归测试
2.冒烟测试
3.随机测试
4.验收测试
四、软件质量
根据当前软件是否好用,在当前的软件行业里我们采用的一套标准是基于ISO组织制定的,需要我们记忆的就是软件质量的六大特征
1.功能性 :是否满足用户显示或者饮食的功能
2.易用性:软件是否好用,是否上手
3.可靠性:软件必须实现需求说明的具体功能
4.效率性:类似于软件的性能,比如(软件的开机快慢,打开程序的快慢,下载)
5.可维护性:软件维护某个功能维修之后还能使用的能力
6.可移植性:软件实现平台互换的能力(A平台转移到B平台)