软件测试高频面试题“黑盒测试之正交试验法”案例剖析与实践应用

简介: 软件测试高频面试题“黑盒测试之正交试验法”案例剖析与实践应用

   今天一位老学员面试遇到面试官问“正交试验法"一问题,他说不太理解是什么意思,自己也通过百度查找正交试验法相关资料进行科普,发现还是看不懂,最终一脸懵逼,恰巧借此机会给大家科普一下黑盒测试之正交试验法的来龙去脉。


一、什么是正交试验法?


   正交一般使用表格来设计测试用例,主要是通过表格中的用例进行统计、分析、比较,找出用例中存在冗余或者重复的用例数量。以便通过正交试验法来减少测试用例数量,选择部分具有代表性的数据进行抽样检查从而提升测试工作效率的一种方法。


   例如:公司本期迭代共了2000个用例,测试时间仅3天,因为需要通过QA/UAT/Prd环境的测试,故需要从中挑选部分具有代码性的用例来做回归测试,以便节省测试时间提升工作效率,这就可以使用正交试验法来实施测试。


二、为什么要学习正交试验法?


   由于软件功能的复杂多样化,会受到很多因素的影响,为了证明测试结果符合预期结果,因为功能条件组合情况太多,因采取正交试验法来抽样提取测试用例,选择几种具有代表性的样例进行测试。


   单纯依据等价类、边界值、因果图用例设计方法来设计测试用例,会使得用例库数量非常庞大,最终导致测试用例数量大得惊人,给测试执行人员带来工作负担,为了提升测试用例的有效性,需要从庞大的用例库中选择一些具有代码性的用例使用正交试验法来设计测试用例,消除用例的冗余,以便快速高效提升测试工作效率。


三、什么场景下会使用正交试验法?


   正交试试法是一种多条件与值的抽样设计方法。  

   从满足条件的抽样案例中选择一批具有代表性的用例进行测试,这些用例具备一定的特点,首先具有相似功能性的用例仅获取一部分满足条件的数据使用正交试验法来设计正交表。


   正交试验法可根据条件与值查找对应的正交表,设计成Excel表格,从中挑选部分具有代码性的用例来执行测试,发现问题,主要目的为了提升测试工作效率,以少的用例覆盖更多的功能点,如果不采用这种方法来执行测试,因为时间、人力资源有限我们无法在有限的时间内完成执行测试工作,故使用正交试验法就解决了此问题。


1) 正交试验法用例设计操作步骤如下:

1、选择因子及水平数;

2、设计正交表;

3、列出抽样试验证测试用例数;


2) 实践案例详解一:

实例:大学计算机系共2个班级,考试课程通过“Sex”、“Class”和“Grade”这三个查询条件对计算机课程的成绩分布,男女比例或班级比例进行人员查询:

1.条件一:根据“Sex”=“男,女”查询

2.条件二:根据“Class”=“202班,203班”查询

3.条件三:根据“Grade”=“及格,不及格”查询


3) 传统用例测试方法

基于上述测试需求分析,存在3个被测元素,被测元素我们称为因子,每个因子有两个取值,我们称之为水平(也就是2)。2^3

传统用例设计方法:则如下(2的3次方=8次);

测试用例表格设计如下图所示:

640.png

正交试验法优化后用例设计如下图所示:

640.png

案例详解2:

有些电商软件基于不同地区的不同用户开展业务,不同地区的不同单价差异化较大,大家都知道全国的省市区包括同一个省又分不同的市商品价值存在差异化,但是我们测试人员不可能将所有的地区场景用例一个个覆盖到,那么学会了正交试验法就能帮助我们解决此问题。


总结:以上内容就是我今天与大家分享的知识点,希望同学们都有所收获。


正交试验证法仅仅是测试用例中的一种设计方法,此方法应用场景基于公司业务的不同而衍生,一般基于电商平台应用场景相对较多,所以希望同学们能够好好掌握以便能够实践应用。

相关文章
|
人工智能 供应链 安全
AI辅助安全测试案例某电商-供应链平台平台安全漏洞
【11月更文挑战第13天】该案例介绍了一家电商供应链平台如何利用AI技术进行全面的安全测试,包括网络、应用和数据安全层面,发现了多个潜在漏洞,并采取了有效的修复措施,提升了平台的整体安全性。
717 4
|
测试技术
软件质量保护与测试(第2版)学习总结第十章 黑盒测试
本文是《软件质量保护与测试》(第2版)第十章的学习总结,介绍了黑盒测试的基本概念和方法,包括等价类划分、边界值分析和因果图法,并通过具体例子展示了如何设计测试用例来验证软件的功能性需求。
293 1
软件质量保护与测试(第2版)学习总结第十章 黑盒测试
|
运维 测试技术
拆分软件测试流程,一张图秒杀所有面试
本文主要介绍了软件测试流程的核心内容,包括需求分析、测试用例编写、测试执行、缺陷提交及回归测试等关键步骤。以迭代测试为例,详细说明了每个环节的具体操作和注意事项,并提供了一张测试流程图以便理解。测试流程确保了软件质量,是面试中常见的考察点。
1068 7
拆分软件测试流程,一张图秒杀所有面试
|
前端开发 机器人 测试技术
【RF案例】Web自动化测试弹窗处理
在进行Web自动化测试时,常会遇到不同类型的弹窗,如ajax、iframe、新窗口及alert/Confirm等。这些弹窗可通过Selenium进行定位与处理。其中,ajax弹窗直接定位处理;iframe需先选中再操作;新窗口类似iframe处理;而alert/Confirm则需特殊方法应对。在Robot Framework中,需先定义并获取窗口后使用特定关键字处理。此外,还有部分div弹窗需在消失前快速定位。希望本文能帮助大家更好地处理各类弹窗。
399 6
【RF案例】Web自动化测试弹窗处理
|
分布式计算 大数据 Spark
大数据-95 Spark 集群 SparkSQL Action与Transformation操作 详细解释与测试案例(二)
大数据-95 Spark 集群 SparkSQL Action与Transformation操作 详细解释与测试案例(二)
178 1
|
NoSQL 测试技术 Redis
第一次面试总结 - 迈瑞医疗 - 软件测试
本文是作者对迈瑞医疗软件测试岗位的第一次面试总结,面试结果非常好,但面试过程中没有提问太多技术性问题,主要围绕个人介绍、互相了解、个人规划和项目亮点进行,因此作者认为这次面经的学习意义不大。作者还提到了实习岗位的待遇和工作内容,以及对不同阶段求职者的建议。
491 2
|
机器学习/深度学习 Web App开发 测试技术
『软件测试3』八大典型的黑盒测试方法已来袭,快快接住!
该文章介绍了八种常用的黑盒测试方法,包括等价类划分、边界值分析、错误推测法、因果图法、决策表测试、状态转换法、场景法以及随机测试,并提供了相应的案例说明。
|
测试技术 数据库
『软件测试2』 关于黑盒测试和测试用例的基础知识
该文章讲解了黑盒测试的基本概念以及如何编写有效的测试用例,包括选择合适的输入数据、预期结果的设定和测试执行的步骤。
|
存储 SQL 分布式计算
大数据-95 Spark 集群 SparkSQL Action与Transformation操作 详细解释与测试案例(一)
大数据-95 Spark 集群 SparkSQL Action与Transformation操作 详细解释与测试案例(一)
231 0
|
机器学习/深度学习 算法 数据中心
【机器学习】面试问答:PCA算法介绍?PCA算法过程?PCA为什么要中心化处理?PCA为什么要做正交变化?PCA与线性判别分析LDA降维的区别?
本文介绍了主成分分析(PCA)算法,包括PCA的基本概念、算法过程、中心化处理的必要性、正交变换的目的,以及PCA与线性判别分析(LDA)在降维上的区别。
726 4