测试理论系列——软件测试分类

软件测试分类图示

测试理论系列——软件测试分类_第1张图片

一、按测试阶段划分

1.单元测试( Unit Testing)

	
又称模块测试,针对软件设计中的最小单位-程序模块,进行正确性检查的测试工作。
单元测试需要从程序内部结构出发设计测试用例。
多个模块可以平行地独立进行单元测试。

单元定义:
C中指一个函数,Java中指一个类,
在图形化的软件中,单元一般指一个窗口,1个菜单。

测试理论系列——软件测试分类_第2张图片

2.测试 (SIT System Integration Testing)

​ 又叫组装测试,通常在单元测试的基础上,将所有程序模块进行有序的、递增的测试。重点测试不同模块的接口部分。
测试理论系列——软件测试分类_第3张图片

3.系统测试( System Testing)


指的是将整个软件系统看为一个整体进行测试,测试的依据是软件需求说明书

4.验收测试 (UAT User Acceptance Testing)


检验软件是否符合用户需求的测试

其他类型的验收测试:

α测试


1、Alpha 是内测版本 
2、通常只在软件开发者内部交流 
3、一般而言, 该版本软件的bug较多, 普通用户最好不要安装。

β测试


 1、Beta是公测版本,是对所有用户开放的测试版本。

 2、这一版本通常由软件公司免费发布, 用户可从相关的站点下载。

 3、通过一些专业爱好者的测试, 将结果反馈给开发者, 开发者们再进行有针对性的修改。
 

γ测试


Gamma版本,指的是软件版本正式发行的候选版。该版本已经相当成熟了, 与即将发行的正式版相差无几, 成为正式发布的候选版本。

二、按是否查看源代码

1.黑盒测试

	1. 又称数据驱动测试,完全不考虑程序内部结构和内部特性,注重于测试软件的功能需求,只关心软件的输入数据和 输出数据。最常使用的就是黑盒测试了

测试理论系列——软件测试分类_第4张图片

2.白盒测试


1. 指的是把盒子打开,去研究里面的源代码和程序结构。需要代码基础,要求较高,一般做的比较少

测试理论系列——软件测试分类_第5张图片

3.灰盒测试


描述:
​	灰盒测试,是介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成测试阶段,不仅关注输出、输入 的正确性,同时也关注程序内部的情况。
​

详细了解黑盒测试:

黑盒测试的分类:


1. 功能测试 (Manual Testing)
   		检查实际软件的功能是否符合用户的需求:
   		
   		逻辑功能测试  
   		界面测试 
   		安装测试

2. 性能测试( Performance Testing) 
   		时间性能 
   		稳定性测试 
   		负载测试    
   		压力测试 
   		

三、按是否运行分类

1.静态测试


指不实际运行被测软件,而只是静态地检查程序代码、界面或文档中可能存在的错误过程。

2.动态测试


是指实际运行被测程序,输入相应的测试数据,检查实际输出结果和预期结果是否相符的过程。

四、按按照是否自动化

1. 人工测试


也叫做手工测试,测试人员手动去进行的测试。

2. 自动化测试 (Automaiton Testing)


利用代码或者工具帮助人工进行测试。常用python、java去写测试脚本,postman、jemeter工具来自动化测试

六、软件测试的其他分类

1. 冒烟测试( Smoke Testing)

冒烟测试就是对系统进行最基本功能的测试,保证基本的功能和流程能走通.

2. 回归测试( Regression Testing)


当修复一个BUG后,把之前的测试用例在新的代码下进行再次测试

3. 随机测试 (Ad-hoc Testing)


随机测试主要是对被测软件的一些重要功能进行复测,也包括测试那些当前的测试用例没有覆盖到的部分

4. 探索性测试

探索性测试意味着同时设计测试和执行测试。测试人员通过测试来不断测试系统。

一般常用测试步骤

1.冒烟测试
一般在测试环境进行,流程上不接受mock来测试,需按实际情况实际处理

2.单元测试
一般在测试环境进行,各自需求自己验证

3.集成测试
一般在测试环境进行,app各需求需要集成

4.回归测试
1.集成之后回归,分为老版本、新版本,在测试环境进行,一般优先老版本,因为服务端会先于app端发布,先保证服务端无bug。
2.app发版之后,需要进行线上回归测试,确保新版app无问题

5.验收测试
回归之后产品验收,实际操作中可能会存在回归与验收同时进行

你可能感兴趣的:(测试,功能测试,单元测试,模块测试,集成测试)