一、正交实验法概述

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

二、正交实验法应用

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

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

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

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

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

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

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

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

三、Allpairs 下载安装

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

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

四、Allpairs 正交实验法使用

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

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

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

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

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

五、总结

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

正交实验法之 Allpairs电商项目用例设计实战的更多相关文章

  1. 小D课堂 - 新版本微服务springcloud+Docker教程_2_04微服务下电商项目基础模块设计

    笔记 4.微服务下电商项目基础模块设计     简介:微服务下电商项目基础模块设计 分离几个模块,课程围绕这个基础项目进行学习             小而精的方式学习微服务 1.用户服务       ...

  2. python-django电商项目-需求分析架构设计数据库设计_20191115

    python-django电商项目需求分析 1.用户模块 1)注册页 注册时校验用户名是否已被注册. 完成用户信息的注册. 给用户的注册邮箱发送邮件,用户点击邮件中的激活链接完成用户账户的激活. 2) ...

  3. 从头开始 启动开源电商项目jShop

    1. 引言 干了三年C#, 有了转Java 的念想,所以尝试学习一下java web,java语法本身和C#没有太多的差别,所以打算看看开源的java项目,开源的Java项目还是非常非常多的,曾经看了 ...

  4. Python实现正交实验法自动设计测试用例

    1.简介 正交试验法是研究多因素.多水平的一种试验法,它是利用正交表来对试验进行设计,通过少数的试验替代全面试验,根据正交表的正交性从全面试验中挑选适量的.有代表性的点进行试验,这些有代表性的点具备了 ...

  5. 用SpringBoot搭建简单电商项目 01

    前几节呢,我们已经简单介绍了SpringBoot框架的使用,从这一节开始,我们尝试着使用SpringBoot框架来一步一步搭建一个简单电商项目.当然了,这不是真正的电商项目,你可以看成是一个CRUD案 ...

  6. Python Django(WEB电商项目构建)

    (坚持每一天,就是成功) Python Django Web框架,Django是一个开放源代码的Web应用框架,由Python写成.采用了MTV的框架模式,即模型M,模板T和视图V组成. 安装Pyth ...

  7. Spark大型电商项目实战-及其改良之番外(1)-将spark前端页面效果高效拷贝至博客

    Spark大型电商项目实战-及其改良这个系列的时间轴展示图一直在变....1-3篇是用图直接表示时间轴,用一段简陋的html代码表示时间表.第4篇开始才是用比较完整的前端效果,能移动.缩放时间轴,鼠标 ...

  8. C#大型电商项目优化(二)——嫌弃EF与抛弃EF

    上一篇博文中讲述了使用EF开发电商项目的代码基础篇,提到EF后,一语激起千层浪.不少园友纷纷表示:EF不适合增长速度飞快的互联网项目,EF只适合企业级应用等等. 也有部分高手提到了分布式,确实,性能优 ...

  9. C# 大型电商项目性能优化(一)

    经过几个月的忙碌,我厂最近的电商平台项目终于上线,期间遇到的问题以及解决方案,也可以拿来和大家多做交流了. 我厂的项目大多采用C#.net,使用逐渐发展并流行起来的EF(Entity Framewor ...

随机推荐

  1. “三剑客”之sed手中有剑

    一.sed介绍 sed是Stream Editor(字符流编辑器)的缩写,简称流编辑器.sed是操作.过滤和转换文本内容的强大工具.常用功能包括对文件实现快速增删改查(增加.删除.修改.查询),其中查 ...

  2. To the Max(动态规划)

    Description Given a two-dimensional array of positive and negative integers, a sub-rectangle is any ...

  3. DockerPush

    1.阿里云镜像发布流程 2.镜像生成 语法:docker commit [OPTIONS] 容器ID [REPOSITORY[:TAG]] [root@pluto data]# docker imag ...

  4. 工作流(workflow)

    1,JBPM 工作流(开源历史悠久) 2,activity 工作流(开源历史悠久) 3,workable 工作流(功能比较强大,但是开源维护缓慢,比较注重商业化) 以上三个是主流的工作流

  5. 蓝鲸平台开启consul.conf UI界面

    #第一步: vi /data/bkce/etc/supervisor-consul.conf 修改参数: command=/usr/bin/consul agent -config-file=/dat ...

  6. 兄弟萌,这份SpringMVC框架学习笔记真的建议反复看,写的太细了

    概述 是Spring为展现层提供的基于MVC设计理念的Web框架,通过一套MVC注解,让POJO成为处理请求的控制器,而无需实现任何接口 支持REST风格的URL请求 采用松散耦合的可插拔组件结构,比 ...

  7. api4excel - 接口自动化测试excel篇

    api4excel - 接口自动化测试excel篇 工作原理: 测试用例在excel上编辑,使用第三方库xlrd,读取表格sheet和内容,sheetName对应模块名,Jenkins集成服务发现服务 ...

  8. Django踩坑记录3

    路径如下: admin.py的代码: from django.contrib import admin from sign.models import Event,Guest # Register y ...

  9. O - Matching 题解(状压dp)

    题目链接 题目大意 给你一个方形矩阵mp,边长为n(n<=21) 有n个男生和女生,如果\(mp[i][j]=1\) 代表第i个男生可以和第j个女生配对 问有多少种两两配对的方式,使得所有男生和 ...

  10. C语言讲义——常量(constant)

    变量可以反复赋值:常量只能在定义时赋值,此后不得更改. 常量的定义需要加关键字const.如: #include <stdio.h> main() { const double PI=3. ...