目前的软件测试主要分为两大类:
B/S(浏览器/系统):也就是web测试(网页测试),如淘宝等网站测试;
C/S(客户端/系统):客户端软件测试,如qq、手机软件等多为移动端的APP测试;
1.按是否涉及结构分
1)黑盒测试:不涉及内部机构,只基于需求和功能性的测试,也称作功能测试。
测试依据:需求说明书
优点:站在用户的立场进行测试;
缺点:不能测试内部机构和逻辑。
2)白盒测试:基于应用代码的内部逻辑知识的测试,也称机构测试或逻辑驱动测试。
测试依据:程序内部结构和逻辑;
优点:可以对程序内部特定结构和逻辑进行覆盖测试;
缺点:无法检验程序的外部特性;
3)灰盒测试:是一种综合测试法,它将“黑盒”测试与“白盒”测试结合在一起,是基于程序运行时的外部表现又结合内部逻辑结构来设计用例,执行程序并采集路径执行信息和外部用户接口结果的测试技术。
2.按测试阶段分类:
单元测试、集成测试、系统测试、验收测试。
1)单元测试(开发人员完成):
模块测试,针对程序模块(软件设计最小单位)来进行正确性检验的测试工作。
单元测试目的:
验证单元代码和详细设计文档的一致性;
发现在编码过程中引入的错误;
减少开发人员的调试