正交实验法之 Allpairs 电商项目用例设计实战

简介: 一、正交实验法概述正交实验法是研究多因素多水平的一种方法,它是通过正交表挑选部分有代表性的水平组合试验替代全面试验。这些有代表性的组合试验具备了“均匀分散,整齐可比”的特点。正交表一般用Ln​(mk)表示,L 代表是正交表,n 代表试验次数或正交表的行数,k 代表最多可安排影响指标因素的个数或正交表的列数,m 表示每个因素水平数,且有 n=k*(m-1)+1。

一、正交实验法概述

正交实验法是研究多因素多水平的一种方法,它是通过正交表挑选部分有代表性的水平组合试验替代全面试验。这些有代表性的组合试验具备了“均匀分散,整齐可比”的特点。正交表一般用Ln(mk)表示,L 代表是正交表,n 代表试验次数或正交表的行数,k 代表最多可安排影响指标因素的个数或正交表的列数,m 表示每个因素水平数,且有 n=k*(m-1)+1。

整理了一份大厂软件测试宝典pdf

二、正交实验法应用

例如三因素二水平的实验:某公司想通过“性别”、“单身”和“年龄”这三个查询条件对公司男女比例情况进行查询:

根据“性别”=“男,女”查询

根据“单身”=“是,否”查询

根据“年龄”=“30 岁以下、30 岁以上”查询

按全面实验要求,须进行23=8种组合的实验。每一行为一条测试用例。

1.jpg

若按L4(23)正交表实验,正交表获取路径:
https://www.york.ac.uk/depts/maths/tables/orthogonal.htm2.png


2.png

把每一行转成测试用例,只需测试 4 次,极大地减少了工作量。

但对于缺少设计经验且被测功能的因素、水平多的情况下,手动去设计正交表是有一定困难的。基于此,给大家推荐一款 Allpairs 工具,自动生成组合测试用例。

三、Allpairs 下载安装

  1. 可直接百度 Allpairs 或者通过以下链接 https://www.softpedia.com/get/Programming/Other-Programming-Files/Allpairs.shtml 完成下载。

3.png4.png


2.下载完成后将下载压缩包解压到对应文件夹。

5.png

四、Allpairs 正交实验法使用

举例:商品筛选(手机)页面

6.png

  1. 分析所有条件及取值,整理到一个 Excel 文档中

7.png

  1. 在 allpairs 目中中新建记事本 1.txt(文件名自定义),并复制 Excel 表中的数据,保存到记事本 txt 中。

8.png9.png


  1. 在当前安装目录中打开命令行窗口,并执行 allpairs.exe t1.txt > testdata.xls

10.png1.1.png


  1. 查看生成的 testdata.xls。TEST CASES 就是我们需要的测试用例,PAIRING DETAILS 配对详情内容可忽略。

12.png

五、总结

整理了一份大厂软件测试宝典pdf

利用因果图法、判定表法可以帮助我们对于输入数据的组合情况进行用例设计,但当输入数据的组合数量巨大时,由于不太可能覆盖到每个输入组合的测试情况,因果图法或判定表法可能就不太适用了,可以采用正交实验法、来合理地减少测试人力跟时间成本。这种方法比较多地应用在软件产品的搜索、查询等场景中。

相关文章
|
8天前
|
数据挖掘 测试技术 BI
正交缺陷分类(ODC)流程简介及应用经验分享
正交缺陷分类(ODC)是一种缺陷分析方法,合理的把它运用在项目中,可以帮助测试、开发团队改进工作,从而提高产品质量。明确 ODC 的流程及各阶段的工作重点,并借鉴本文中提到的经验建议,会让读者在运用 ODC 时更加得心应手。
25 7
正交缺陷分类(ODC)流程简介及应用经验分享
|
3月前
|
数据可视化 SDN Python
复动力系统 | 混沌 | Lozi 映射吸引子的可视化与交互式探索
该文介绍了一篇关于Lozi映射吸引子可视化和交互式探索的文章。Lozi映射是混沌理论中的一个模型,展示非线性动力系统的复杂性。通过Python和matplotlib,作者实现了Lozi映射的可视化,并添加交互功能,允许用户缩放以详细观察混沌吸引子。文中还给出了Lozi映射的数学定义,并提供了Python代码示例,演示如何绘制和动态调整吸引子的显示。
|
前端开发 测试技术 定位技术
DDD实战之八:冲刺 1 战术之聚合设计(上)
DDD实战之八:冲刺 1 战术之聚合设计(上)
DDD实战之八:冲刺 1 战术之聚合设计(上)
|
前端开发 小程序 Java
DDD实战之八:冲刺 1 战术之聚合设计(下)
DDD实战之八:冲刺 1 战术之聚合设计(下)
DDD实战之八:冲刺 1 战术之聚合设计(下)
|
机器学习/深度学习 算法
深度之眼(十二)——svd分解的应用
深度之眼(十二)——svd分解的应用
深度之眼(十二)——svd分解的应用
|
人工智能 移动开发 算法
禁忌搜索(Tabu Search)原理梳理和应用细节-附求解VRPTW问题C++代码
禁忌搜索(Tabu Search)原理梳理和应用细节-附求解VRPTW问题C++代码
禁忌搜索(Tabu Search)原理梳理和应用细节-附求解VRPTW问题C++代码
|
算法 前端开发 JavaScript
接口测试平台番外:正交工具过滤功能-3 (难到爆炸)
接口测试平台番外:正交工具过滤功能-3 (难到爆炸)
接口测试平台番外:正交工具过滤功能-3 (难到爆炸)
|
算法 前端开发 JavaScript
接口测试平台番外-正交工具5
接口测试平台番外-正交工具5
接口测试平台番外-正交工具5
|
测试技术
接口测试平台番外-正交工具2
上节我们简单了解了一下什么是正交。本节我们来进行设计与实现: 正好也来复习一下,如何新增一个菜单模块的开发流程
接口测试平台番外-正交工具2
|
前端开发 JavaScript 测试技术
接口测试平台番外-正交工具3
接口测试平台番外-正交工具3
接口测试平台番外-正交工具3