测试用例设计方法

一、等价类划分法

有效等价类:程序规格说明有意义,合理的输入数据
无效等价类:程序规格说明无意义,不合理的输入数据

一条测试用例尽可能多的覆盖未被覆盖的有效等价类;
一条测试用例只能覆盖一个无效等价类;

  • 等价类细节
    (1)长度
    (2)类型
    (3)组成规则
    (4)是否为空
    (5)是否区分大小写
    (6)是否重复
    (7)是否去除空格
    适用场景:需要有大量测试数据输入,但是没法穷举测试的地方
    典型代表:页面的输入框测试
二、边界值

作用:(有序、有范围)等价类的补充
补充:考虑数据类型的边界
如 int 类型 占4个字节 即 32bit 取值范围[-231, 231-1]

上点:边界上的点
内点:区间内的点
离点:离边界值最近且与上点不属于同一等价类的点(对于小数,没有离点,不用取)

规则的几种情况
1.规则是区间:
 按上点、内点、离点取
2.规则是取值的个数:
 取最小、最大、中间个数
3.规则是a~z序列:
 取a、z
4.规则是集合:
 取一个集合内的,取一个集合外的

等价类的没个边界值都要作为测试条件。

三、因果图

因:输入条件
果:输出条件、输出结果
适用于输入条件之间有相互制约、相互依赖的情况

  • 条件和结果关系


    条件和结果的关系

恒等:条件成立,结果成立
非: 条件成立,结果不成立
或: 只要有一个条件成立,结果成立
与: 必须所有条件都成立,结果成立

  • 条件之间关系


    条件之间关系
  • 因果图法基本步骤


    因果图法基本步骤
四、判定表
  • 判定表组成
    条件桩:问题的所有条件
    动作桩:问题的所有输出
    条件项:针对条件桩的取值
    动作项:条件项的各种取值情况下的输出结果
  • 步骤
    (1)列出所有条件和动作桩
    (2)填写条件项
    (3)填写动作项
    (4)简化判定表
五、场景法

模拟用户操作软件时的场景,主要用于测试系统的业务流程。
基本流:按照正确业务流程实现的一条操作路径(模拟正确的操作流程)
备选流:导致程序出现错误的操作流程(模拟错误的操作流程)

注意:还要补充一些异常情况
冒烟测试主要采用场景法。

六、流程分析法

针对流程测试的测试子项进行设计。
适用于有先后顺序的测试,常用语业务流程测试、安装流程测试等。
一般每各流程用一个测试用例验证。

七、错误推断法
八、正交法

正交表:一种特制的表,一般的正交表记为:


n:表的行数,也就是需要测试的组合次数
k:表的列数,表示因素的个数
m:没个因素包含的取值个数(各因素的水平数)
k个因素,没个因素有m和取值,n个需要测试的组合数
叫k因素m水平

  • 步骤:
    (1)根据所策程序中因素的个数以及没个因素的取值个数,选取一个合适的正交表
    (2)把因素及其取值列举出来,并对其进行编号
    (3)把因素及其取值应收到正交表中
    (4)根据映射好的正交排列表编写测试用例

  • 混合正交表
    很多情况都是各因素的水平数不同,此时需要使用混合正交表工具allpairs来生成正交表。
    使用步骤:
    (1)取值表,不需要编号,列出数据即可

    取值表

    (2)复制表格中的数据到一个新建的txt文档中(如test.txt),保存到allpairs文件夹中
    (3)打开控制台,进入allpairs文件夹中,输入
    allpairs.exe test.txt>newTest.txt
    newTest.txt中就是生成的混合正交表,~表示取值无关紧要。

测试用例方法的选择
  1. 具有输入功能,但输出之间没有组合关系 → 等价类划分
  2. 输入有边界,如长度、类型 → 边界值补充
  3. 多输入、多输出、输入与输入之间存在组合关系、输入与输出之间存在依赖和制约关系 → 因果图和判定表
  4. 配置类软件,组合比较多,用最少的测试用例获得最大测试覆盖率 → 正交法
  5. 多个功能的组合测试 → 流程图和场景法
  6. 补充测试用例 → 错误推断法
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容