测试理论知识三:测试用例、测试策略

1.测试用例

完全的测试是不可能的,对任何程序的测试必定是不完全的,那么,最显然的测试策略就是努力使测试尽可能完全。

进行测试前,推荐先使用黑盒测试的方法设计测试用例,然后使用白盒测试方法来补充的测试用例。

2. 白盒测试

白盒测试关注的是测试用例执行的程度或覆盖程序逻辑结构的程度。

白盒测试下的用例测试的包括范围:语句覆盖、判断覆盖、条件覆盖、判定/条件覆盖、多重条件覆盖。

语句覆盖:语句覆盖是指测试用例可以被测试的目标程序的每行代码都执行。

3. 黑盒测试

我们知道,黑盒测试的举例用法------穷举法是不可能完成的,因此,我们就需要在所有可能的输入测试中寻找出某个小的子集。

在这里,我们将介绍黑盒测试下的:等价类划分、边界值分析、因果图分析、错误猜测。

3.1. 等价类划分

基于3中描述的"子集",我们还需要准备两个特性:

  1. 严格控制测试用例的增加,减少为达到"合理测试"的某些既定目标而必须设计的其他测试用力数量。

  2. 它覆盖了大部分其他可能的测试用例。

所以使用等价划分设计测试用例主要有两个步骤:确定等价类、生成测试用例。

3.1.1 确定等价类

确定等价类:我们将测试参数分为两大类,有效等价类、无效等价类。有效等价类是指输入的测试参数对于程序来说是合理的,在该程序的测试范围之内的。无效等效类同理。有效等价类和无效等价类都是确定等价类的子集。

3.1.2 生成测试用例
  1. 为每个等价类设置一个不同的编号。

  2. 编写新的测试用例,尽可能多地覆盖那些尚未被涵盖的有效等价类,直到所有的有效等价类都被测试用例所覆盖(包含进去)。

  3. 编写新的用例,覆盖一个且仅一个尚未被涵盖的无效等价类,直到所有的无效等价类都被测试用例所覆盖。

3.2. 边界值分析

一般来说,考虑边界条件的测试用例与其他没有考虑边界条件的测试用例相比,具有更高的测试回报率

所谓边界条件,是指输入和输出等价类中那些恰好处于边界、或超过边界、或在边界以下的状态。

边界值分析方法与等价划分方法存在两方面的不同:

  1. 与从等价类中挑选出任意一个元素作为代表不同,边界值分析需要选择一个或多个元素,以便等价类的每个边界都经过一次测试。

  2. 与仅仅关注输入条件(输入空间)不同,还需要考虑从结果空间(输出等价类)设计测试用例。

3.3. 因果图分析

边界值分析和等价分析的一个弱点是未对输入条件的组合进行分析。

因果图有助于用一个系统的方法选择出高效的测试用例集,同时可以指出规格说明不完整性和不明确之处。

3.4. 错误猜测

顾名思义,就是靠自己的主观能动性来进行测试,一般常用的猜测如下:

  1. 输入列表为空。

  2. 输入列表仅包含一个条目。

  3. 输入列表所有条目的值都相同。

  4. 输入列表已经排过序。

4. 测试策略

经过对白盒测试、黑盒测试的测试方法介绍,我们总结了以下测试要点:

  1. 如果规格说明中包含输入条件组合的情况,应首先使用因果图分析方法。

  2. 在任何情况下都应使用边界分析方法。

  3. 应为输入和输出确定有效和无效等价类,在必要情况下对上面确认的测试用例进行补充。

  4. 使用错误猜测技术增加更多的测试用例。

  5. 针对上述测试用例集检查程序的逻辑结构。

相关推荐
码界奇点5 天前
KingbaseES一体化架构与多层防护体系如何保障企业级数据库的持续稳定与弹性扩展
数据库·架构·可用性测试
理智的煎蛋5 天前
MySQL高可用架构:MHA
linux·数据库·mysql·架构·可用性测试
卓码软件测评19 天前
软件测试:如何利用Burp Suite进行高效WEB安全测试
网络·安全·web安全·可用性测试·安全性测试
卓码软件测评21 天前
【网站测试:CORS配置错误引发的安全风险及测试】
功能测试·安全·web安全·压力测试·可用性测试·安全性测试
卓码软件测评1 个月前
网站测评-利用缓存机制实现XSS的分步测试方法
java·后端·安全·spring·可用性测试·软件需求
软件测试-阿涛1 个月前
【功能测试】软件集成测试思路策略与经验总结
功能测试·集成测试·可用性测试
数据爬坡ing1 个月前
软件工程总体设计:从抽象到具体的系统构建之道
数据库·流程图·软件工程·可用性测试·软件需求
金玉满堂@bj1 个月前
飞书推送工具-自动化测试发送测试报告一种方式
可用性测试
Kingfar_11 个月前
用户体验的色彩表达:基于脑电和眼动的产品色彩情感设计
人机交互·可用性测试·ux·用户体验
成成成成成成果1 个月前
揭秘动态测试:软件质量的实战防线
python·功能测试·测试工具·测试用例·可用性测试