700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 黑盒测试用例设计方法三(正交实验法 功能图法 用例设计方法综合选择)

黑盒测试用例设计方法三(正交实验法 功能图法 用例设计方法综合选择)

时间:2024-06-01 17:38:11

相关推荐

黑盒测试用例设计方法三(正交实验法 功能图法 用例设计方法综合选择)

测试步骤

一、正交实验法1.1正交实验法介绍1.2正交实验法实现步骤1.3实际案例 二、功能图法2.1功能图法原理介绍2.2功能图法实现步骤2.3实践案例 三、其他用例设计方法3.1测试大纲法3.2探索性测试法3.3猴子测试(随意性测试) 四、用例设计方法综合选择4.1测试用例设计方法怎么用

一、正交实验法

1.1正交实验法介绍

概念:正交实验法就是利用排列整齐的表-正交表来对实验进行整体设计、综合比较、统计分析,实现通过少数的试验次数找到较好的生产条件,以达到做好的效果。这种实验设计法是从大量的试验点挑选适量的具有代表性的点,利用已经造好的表格-正交表来安排试验并进行数据分析的方法基本思想:

在一项试验中,把影响试验结果的量称为试验(因素)因子,简称因素。在试验过程中,每一个因素可以处于不同的状态或状况,把因素所处的状态或状况,称为因素的水平,简称水平

例如:字的显示效果—字体、字号、颜色—>称为因素 字体选择时,可以选择宋体、楷体、微软雅黑、隶书---->称为水平(212个)

字号选择时---->称为水平(100个)

颜色选择时---->称为水平(256个)

测试字的显示效果将会有:212100256=?

每列中不同数字出现的次数相等。这一特点表明每个因素的每个水平与其他因素的每个水平参与试验的几率是完全相等的,能有效地比较试验结果并找出最优的试验条件。

任意2列其横向组成地数字对中,每种数字对出现的次数相等。这个特点保证了试验点均匀的分散在因素与水平地完全组合之中。

正交表的种类

-各列水平数均相同的正交表

-混合水平正交表正交表的特性

-整齐可比、均衡分散

m、n、k这三个数字之间没有任何数学关系

仅适合用于每一个因素的水平数都相同的正交表

1.2正交实验法实现步骤

确定因素:这里的因素是指对软件运行结果有影响的软件(分析所有对结果有影响的因素)

-----确定因素的取值范围或集合(该步是为步骤3做准备的)

-----因素的取值范围是指软件输入的取值范围或集合以及可用的硬件资源确定每个因素的水平

-----根据因素的取值范围或集合,采用等价类划分、边界值分析以及其他软件测试技术,在每个因素的取值范围或集合内挑选出有效等价类、无效等价类、正好等于、刚刚大于或刚刚小于边界值等有代表性的测试值选择正交表(只有特定的因素数和水平数的组合才有对应的正交表,正交表的因素数和水平数一般要大于实际的因素数和水平数)

-----根据确定的因素和水平,选择合适的正交表

-----如果没有合适的正交表可用或需要的测试用例个数太多,要对因素和水平进行调整

1.3实际案例

案例:有一个工业产品,其生产工艺受到操作方式、温度、洗涤时间三个因素的影响,并且每个因素都有三种可能的取值,具体如下所示,请设计试验组合。

完全排列组合:333=27

使用小工具(正交设计助手)完成正交实验的设计(L9_3_4:三水平,四因素,9次试验)

每一列中,同一个数字出现的次数相等(3次)

任意两列中,同一个数字对出现的次数相等(1次)

二、功能图法

2.1功能图法原理介绍

功能图法又叫做状态迁徙图

来源:在遇到有事务流或由于某种条件成立导致状态改变的软件时,如何进行测试用例的设计就比较麻烦使用场合:软件的状态会根据某些内容、条件、操作的变化而变化状态迁徙图法的目标

设计足够多的测试用例达到对系统状态的覆盖、状态-条件组合的覆盖以及状态迁移路径的覆盖以操作系统的进程调度算法为例:

2.2功能图法实现步骤

列出所有可能的输入事件,以ip N 的方式命名(input,N为1,2,3,4……)把软件的打开的初始状态,定义为“空闲”状态在“空闲”状态上加所有可能的输入(只加一次)在上一步产生的所有新状态,分别加所有可能的输入(只加一次,并且曾经加过的操作不再重复添加)循环执行上一步直到再没有任何新状态产生,列出所有的状态,生成状态表组合任意可能的状态组合,写出相应的测试用例

2.3实践案例

案例:以QQ登陆界面为例,说明功能的变迁。

(1)识别出可以进行的操作

ip 1:输入账号

ip 2:输入密码

ip 3:点击登录

ip 4:点击关闭按钮

(2)定义QQ登陆界面为 空闲 状态。

(3)给空闲状态加操作。第一轮分析后:

产生了新的状态。针对新的状态进行分析(第二轮):

得到一个新状态。所以继续进行分析:

虽然得到了一个全新的界面(状态),但是和空闲状态发生了人“隔断”,因此将其视为空闲状态的结束。可以结束分析过程

(4)将状态变化过程列表化,准备设计测试用例。

①A列:从QQ的登陆界面,直接点击关闭按钮,QQ登陆退出

②D列:从QQ的登陆界面,先输入QQ号(状态变为QQ号已输入);再输入密码(状态变为QQ号、密码已输入),点击登录,状态就会变为QQ主界面

③B列:(略)

测试用例的设计争取达到:“大道至简、大巧若拙”就好。越自然越好。

三、其他用例设计方法

3.1测试大纲法

一种着眼于需求的方法为列出各种测试条件,将需求转换为大纲(思维导图)的形式无需用例设计。一般从根节点开始,到叶节点结束。这样的一条路径就是一条测试用例一般用于快速的测试和记录过程,用例一般进行后补。

3.2探索性测试法

基于测试人员经验与直觉的测试方法是对测试用例设计的有效补充探索性测试也必须生成测试用例

3.3猴子测试(随意性测试)

一种没有书面测试用例、记录期望结果、检查列表、脚本或指令的测试缺点

(1) 测试往往不太真实

(2)不能达到一定的覆盖率

(3)许多测试都是冗余的

(4)需要使用同样的随机数才能重建测试

四、用例设计方法综合选择

首先进行等价类划分法在任何情况下都必须使用边界值分析方法如果程序的功能说明中含有输入条件的组合情况,则一开始就可选用因果图法和判定表驱动法对于参数配置类的软件,要用正交实验法选择较少的组合方式达到最佳效果状态迁徙图法也是很好的测试用例设计方法,我们可以通过不同时期条件的有效性设计不同的测试数据对于业务流清晰的系统,可以利用场景法贯穿整个案例过程可以用错误推测法追加一些测试用例对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度,如果没有达到要求的覆盖标准,应当再补充足够的测试用例

4.1测试用例设计方法怎么用

首先明确用例设计方法都有哪些:

(1)等价类划分法

(2)边界值分析法

(3)因果图法

(4)判定表法

(5)场景法

(6)正交实验法

(7)状态迁徙图法(功能图法)如何使用?用例设计方法的使用不是孤立存在的,而是存在于项目中。尤其是一个项目中。以教育APP为例说明各种用例设计方法的使用:

(1)在启动页中。有如下需求:

①读取版本更新信息。匹配当前APP与线上需要更新的APP版本是否一致

②读取用户信息。未登录用户,则不用获取;已登录用户,验证是否登陆过期。

用例设计方法:采用场景法进行设计

设计场景

①APP的安装版本比最新版低。启动就需要进行版本检测,并进行提示。

②APP安装版本与最新版一样。默认检测过程成功。

③APP启动检测用户登陆状态,如果登陆过期或者未登录,启动完成后直接跳转登录界面。

④APP启动检测用户登陆状态,如果登录信息有效,启动完成后直接跳转首页界面。

(2)在登录界面,看需求。

①手机号:暂时只支持大陆账号

②验证码:长度为6位数字

③短信验证码文本内容:【正教】456712(正教验证码),30分钟内有效,为确保您账号安全,请勿把验证码告诉他人。感谢您关注正教!

④登录按钮点击后。系统可能的弹窗提示。

用例设计方法采用等价类划分法和边界值分析法、因果图分析法。

等价类划分法:

①手机号的有效性。(手机号包含各种不合法字符);

②验证码包含各种不符合要求的字符;

边界值分析法

①手机号超过/不足长度限制;

②验证码超过/不足长度限制

③验证码有效期为30分钟;所以超过30分钟后使用验证码,就是边界值的使用。

④弹窗提示1s消失;超过或者不足的测试都是边界值的应用。

因果图法:

①提交数据时,APP网络中断,有网络异常的提示;

②提交数据时,服务端崩溃或者无法提供正常服务,有服务器报错提示或者等待提示

③提交数据时。手机号不符合要求(不存在),有手机号错误的提示

④提交数据时,验证码输入不是收到的验证码、超市,有验证码错误提示

(3)课程内容页。需求如图所示:

用例设计方法:场景法、等价类划分、边界值分析法。

场景法

①该课程今日有作业、有提问的内容展示。老师发布作业的时候,学生提问。

②该课程今日有作业、无提问的内容展示。老师发布作业的时候,学生没有提问。

③该课程今日无作业、有提问的内容展示。老师没有发布作业的时候,学生提问。

④该课程今日无作业、无提问的内容展示。老师没有发布作业的时候,学生也不提问。

等价类划分法、边界值分析法

①日期的显示。有没有出现2月有29天的现象?

②日期的显示。会不会出现2月1日和1月31日重复或者像个一天的现象?

总结:所有测试用例的设计方法,没有独立使用的,都是融合在一起使用。往往在一个软件的界面中,都可以使用好几种测试用例的设计方法。

正交实验法是一种极其特殊的用例设计方法,一般没地方用。下面图中的功能适合使用:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。