【测试开发】测试分类

目录

一. 按照测试对象划分

1. 界面测试*

2. 可靠性测试 

3. 容错性测试

4. 文档测试

5. 兼容性测试*

6. 易用性兼容*

7. 安装卸载测试*

二. 按照是否查看代码划分 

1. 黑盒测试*

2. 白盒测试* 

3. 灰盒测试*

4. 补充

三. 根据开发阶段划分 

1. 单元测试*

2. 集成测试*

3. 系统测试*

4. 回归测试 

5. 冒烟测试* 

6. 验收测试*

四. 按测试实施组织划分

 α测试和β测试 

五. 按是否手工划分 

1. 手工测试*

2. 自动化测试* 

3. 补充 


一. 按照测试对象划分

1. 界面测试*

通常我们打开浏览器显示的页面,小程序的页面,公众号等这些用于肉眼直观看到的都属于界面,用户和软件进行交互的时候,通常都是通过界面和软件进行沟通的,所以界面还是很重要的。

界面测试的时候,一般会参考规格说明书和UI视觉稿,旨在验证界面是否完整且合理。

一般的测试内容包括:

1. 验证界面内容显示的完整性,一致性,准确性,友好性。比如界面内容对屏幕大小的自适应,换行,内容是否全部清晰展示;

2. 验证整个界面布局和排版是否合理,不同板块字体的设计,图片的展示是否符合需求;

3. 对界面不同控件的测试,比如,对话框,文本框,滚动条,选项按钮等是否可以正常使用,有效和无效的状态是否设计合理;

常见的错误:

重叠,截断(内容太多的时候,没有以...的形式出现,而是截断),文字不合理自动换行等。

2. 可靠性测试 

可靠性即可用性,是指系统正常运行的能力或者程度,一般用正常向用户提供软件服务的时间占总时间的百分比表示。
可靠性 = 正常运行时间/(正常运行时间+非正常运行时间)*100%
通常需要借助工具来测试。

3. 容错性测试

容错性测试是指系统能够处理异常,用户的错误操作而不至于系统崩溃,从而能够提高系统的可用性。

容错性测试一般包括:

输入异常数据或进行异常操作,以检验系统的保护性。如果系统的容错性好,系统只给出提示或内部消化掉,而不会导致系统出错甚至崩溃。(在计算的时候出现了 4 / 0 的时候,会触发异常,捕获异常。)
比如数据级测试,环境容错性测试,界面容错性测试;

4. 文档测试

可以理解为针对需求文档进行分析,也就是针对用户提出的需求进行分析。 

5. 兼容性测试*

对于软件的兼容性测试,一般包括以下内容:

1. 浏览器兼容:Chrome,edge等;

2. 操作系统兼容:IOS,Linux,Windows等;

3. 设备兼容;

4. 版本兼容;

5. 应用平台的兼容;

6. 易用性兼容*

软件产品也始终关注用户体验,让用户获得舒适,易用的体验,针对软件这方面的测试称之为易用性测试。这一块在前面的文章中也给有介绍。

7. 安装卸载测试*

安装卸载测试一般包括以下部分:

1. 软件不同的安装和卸载方式;
2. 应用是否可以在不同的系统,版本下安装(安装兼容性);
3. 安装或者卸载过程中是否可以手动暂停,或者取消;
4. 安装空不足的时候系统是否有提示;
5. 卸载和安装过程中出现环境问题,软件是否可以正常并且合理的应对,比如死机,断电,断网等; 

二. 按照是否查看代码划分 

1. 黑盒测试*

黑盒测试是指不考虑程序内部逻辑和结构,只注重于软件的功能的情况下,检查系统的功能是否按照需求说明书的规定正常使用,是否能适当的接收输入数据而输出正确的结果;

黑盒测试也称为数据驱动测试;

黑盒测试的优点:

1. 不需要了解关注程序代码的内部实现;

2. 从用户角度出发设计测试用例;

3. 测试用例是基于需求说明书来的,不容易遗漏;

代码覆盖率低,业务覆盖率高;

常用的黑盒测试方法:等价类,边界值,判定表,正交表,场景设计法...

2. 白盒测试* 

白盒测试更注重于程序的内部实现,针对程序的内部逻辑结构来设计测试用例,测试程序的运行是否符合预期;

白盒测试也称为结构测试和逻辑测试;

白盒测试的代码覆盖率高,但是业务覆盖率低;         

常用的白盒测试方法:语句覆盖、判定覆盖、条件覆盖...

3. 灰盒测试*

灰盒测试是介于黑盒测试和白盒测试之间的一种测试,既要关注程序的输入输出的正确性,也要关注程序的内部逻辑结构。 

灰盒测试一般用于 集成测试阶段; 

4. 补充

常见的测试方法有哪些?哪种测试方法用的多?

常见的有黑盒测试和白盒测试,具体哪种测试方法的使用需要结合实际场景来选择,正常使用的多的是黑盒测试,同时也需要依靠白盒测试来准确的锁定程序出现的错误。 

三. 根据开发阶段划分 

1. 单元测试*

单元测试是对软件组成单元进行测试,检验软件基本组成单位的正确性。测试的对象是软件设计的最小单位:模块。又称为模块测试;

 测试方法:白盒测试;

 测试对象:模块,类似于Java中的一个方法;

测试内容:语句的正确性,判断条件的正确性等;

 在Java中通常可以使用 Junit 框架来进行单元测试;

2. 集成测试*

集成测试,可以理解为在单元测试结束后,集成各个单元模块来进行测试;主要是检查单元与单元之间的接口是否正常运行。 

测试阶段:一般在单元测试之后;

测试对象:单元模块之间的接口;

测试方法:黑盒测试和白盒测试;

测试内容:模块之间的数据传输,功能关系等; 

3. 系统测试*

将软件系统看成是一个系统的测试。包括对功能、性能以及软件所运行的软硬件环境进行测试。  

测试阶段:集成测试之后;

测试对象:整个系统;

测试方法:黑盒测试;

测试内容:功能,性能,界面,易用。安全,网络,兼容,中断等;

4. 回归测试 

回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。

5. 冒烟测试* 

冒烟测试可以理解为对一个系统软件进的核心功能进行测试,一般是在系统测试之前执行的,只有冒烟测试后,确认系统的核心功能没问题,基本功能正常,再进入系统测试。如果不通过就由开发人员重新修复漏洞,直至通过。

6. 验收测试*

验收测试是部署软件之前的最后一个测试操作。它是技术测试的最后一个阶段,也称为交付测试。目的是确保软件的功能都完备,软件系统都满足用户需求。

测试阶段:系统测试之后;

测试对象:整个系统;

测试方法:黑盒测试;

测试内容:同系统测试; 

四. 按测试实施组织划分

 α测试和β测试 

五. 按是否手工划分 

1. 手工测试*

人为的去输入用例,观察结果,作出反馈。 

2. 自动化测试* 

通过运行应用程序来代替手工执行,将人为的测试行为转换为机器执行。

3. 补充 

自动化测试是否能够完全代替手工测试?

  不能,只能替代一部分。用户使用软件的时候,各种各样的场景都有可能会遇到,但是自动化代码是写死的,因此所产生的测试思路不可能是绝对完善的。而能代替的这一部分通常情况下,是指操作重复性比较高的测试环节,例如登录注册等。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

PlLI-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值