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