首页 > 编程知识 正文

测试用例怎么写的流程和步骤,测试用例100道经典题目

时间:2023-05-05 22:31:02 阅读:105898 作者:2560

黑匣子测试是什么? 黑匣子测试,又称功能测试,是一种在不了解程序内部结构和内部特性的情况下进行的测试方法。 黑匣子测试只是验证程序是否能按照要求规格说明书的规定正常使用,是否能正确接收数据并产生适当的输出结果,例如错误信息和正确的接口等。

作为黑匣子检查方法,有等价体系划分法、边界值分析法、正交实验法、流分析法(场景法)、英格拉姆法、判定表法、输入域复盖法、输出域复盖法、估计误差法)。

一、等价类分类法1.1配置文件等价类分类法是指将程序输入值的集合分为几个等价类,等价类分为有效等价类和无效等价类,从每一类中选择少量数据进行测试。

1.2测试用例构建方法根据需求文档明确需求

分析需求的每项功能数量

确认各功能有多少个输入

确认每个输入有多少规则

针对输入规则划分输入的等价类

根据等价类设计测试用例

1.3例1 .在输入条件中确立一个范围时,可分为一个有效等价类和两个无效等价类。 输入成绩时,要求点数在[ 0,100 ]之间,将等价类分为以下几类。

有效等价类别:

得分[ 0,100 ]之间无效的等价类别:

分数小于0分数大于100.确定输入为n个值之一时,可以分为n个有效等值类和一个无效等值类,如输入学历,要求只能输入专科、本科、硕士、博士4种。 等价类分为以下几种。

有效等价类别:

输入专科、本科、硕士、博士中的一个无效等价类:

输入4种不同学历的数据3 .输入条件为真伪值时,可建立为一个有效等价类(真)和一个无效等价类(假),为一个判断问题的对错,将等价类分为:

有效类:是的

无效等价类:错误

4 .确定输入数据满足一个条件,可确立为一个无效等价类和多个有效等价类。 例如,填补问题1 1=? 等价类分为:

有效类: 2

无效等价类: 2以外的数字

天空

空间

汉字

英文字母

特殊字符

5 .当个数由输入数据决定时,可以分为一个有效等价类和两个无效等价类。 例如,一天必须上2-10节课。 等价类分为以下几类:

有效等价类别:

一天上2-10次课无效的等价类:

每天的节数小于2每天的节数超过10(6)。 在输入数据确定格式时,可分为一个有效等价类和多个无效等价类。 在设定密码时要求文字、数字、特殊文字的组合的情况下,等价类可以分为如下:

有效等价类别:

字符、数字和特殊字符组合无效的等价类:

纯文字数字三者二者的组合…… 7 .输入值为一个过程时,可以分为一个有效等价类和多个无效等价类。 例如,输入图像的路径可以分为如下所述。

有效等价类别:

的图像路径无效。 非图像文件的路径

超过深度要求的路径不存在格式错误的路径(区分大小写时)不存在图像路径其他文件路径的路径中存在空格或其他特殊字符……二、边界值分析法2.1轮廓边界值分析法是对输入数据的边界值测试,一般来说

2.2测试用例的构建方法按输入的等价类设计边界值测试用例。 包括等价类的上点和远点。 (上点)边界值上的点; 点是最接近边界的点)

2.3例1 .成绩的输入,分为三个等价类:

有效等价类:输入得分为[ 0,100 ]

无效等价类:分数小于0

分数大于一百

根据这3个等价类的边界值,测试用的例子如下所示。

等价类别边界值测试用例预期结果[ 0,100 ] 0正确答案[ 0,100 ] 100正确答案小于0-1错误10001错误2 .不仅要分析等价类别的边界值,还必须测试输入数据的类型和各种场景的边界值。 例如,如下所示。

a )整数数据边界值:-32767和32768b (布尔值边界值:真和假c )循环边界值)第一个循环和最后一个循环d )报告的第一行和最后一行e )浏览器左上角和右下角f )阵列的第一个和最后一个元素3,判定表法3.1概述

3.2测试用例的构建方法在需求中找到输入参数需要满足的条件在需求中找到满足条件的结果将所有n个输入条件全部排列组成2 n 2^n 2n组测试用例,了解能否结合测试用例

以忽略没有数据可取的不存在的结果 3.3举例

如下是对闰年判定的测试用例,其中闰年的判定条件为能被4整除但不能被100整除或者能被400整除。

条件能被4整除YYYYNNNN不能被100整除YYNNYYNN能被400整除YNYNYNYN结果是闰年√√√不是闰年√不存在√√√√ 四、 正交实验法 4.1简介

正交实验法是利用正交表来对程序进行测试,用较少的测试用例进行较全面的测试。根据正交表的正交性,从全面试验中挑选出适量的、有代表性的点进行试验。
  正交表是一种特制的表格,一般用Ln(mk)来表示,其中L表示正交表,n表示测试用例数,k表示最多可安排影响指标因素的个数或正交表的列数,m表示每个因素的水平数即状态,n=k*(m-1)-1,即最少的测试用例数。

4.2构造测试用例方法 ① 从需求中找出所有的因素(输入参数)② 从需求中找出所有的水平(因素状态)并编号,画出因素状态表③ 通过因素状态表绘制出正交表④ 根据正交表,设计测试用例,一行是一条用例

4.3举例

1.因素数和水平数刚好符合正交表

如测试一个登陆,需要输入用户名、密码和验证码,则用户名、密码和验证码是因素,每个因素都有填和不填两种水平(状态),则n= k*(m-1)-1=3*(2-1)+1=4组测试用例,根据正交实验法设计正交表如下

状态因素用户名密码验证码1填填不填2填不填填3不填填填4不填不填不填

L4(23)正交表

2.因素的水平数不相符

如一个功能需要一个用户提交性别、学历、政.治面貌3个数据,每个数据要求如下:
性别:取值为男、女2种
学历:取值为大专、本科、硕士、博士4种
政治面貌:取值为群众、共青团员、中共党员3种

因素状态表:

状态因素性别学历政.治面貌1男大专群众2女本科共青团员3硕士中共党员4博士

正交表如下:

测试用例性别学历政.治面貌1男大专群众2男本科共青团员3女硕士中共党员4女博士共青团员5男硕士群众6男博士中共党员7女本科中共党员8女大专共青团员9男本科群众10男大专中共党员11女博士群众12女硕士共青团员五、 流程图分析法 5.1简介

当一个事件触发时,就形成了一个场景,而同一事件的不同触发顺序和处理结果就形成了事件流。在测试一个软件的时候,在场景法中,测试流程是软件功能按照正确的事件流实现的一条正确的流程,即基本流,而凡是出现故障或缺陷的过程,就称为备选流,备选流是可以从基本流来的,或是由备选流引出的。

5.2构造测试用例方法 ① 根据业务流程绘制出流程图,流程图包含基本流和备选流② 根据基本流和备选流生成不同的场景③ 对每一个场景生成相应的测试用例④ 对生成的测试用例重新评审,去掉多余的测试用例,测试用例确定后,对每一个测试用例确定测试数据值 5.3举例

1.例如一个需要输入用户名和密码的登陆并付款购物功能,其中如果密码错误3次会锁定用户的事件流如下:

通过从确定执行用例场景所需的数据元素入手构建矩阵。对于每个场景,至少要确定包含执行场景所需的适当条件的测试用例。例如,在下面的矩阵中,V(有效)用于表明这个条件必须是 VALID(有效的)才可执行基本流,而 I(无效)用于表明这种条件下将激活所需备选流。下表中使用的“n/a”(不适用)表明这个条件不适用于测试用例。

测试用例ID场景用户名密码有钱购物预期结果1场景1:购物成功VVV成功购物2场景2:用户名错误In/an/a提示用户名错误3场景3:密码错误VIn/a提示密码错误4场景4:密码错3次锁定VIn/a提示密码错误3次锁定用户5场景5:没钱付款VVI提示余额不足六、 因果图法 6.1简介

因果图法是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,适用于检查程序输入的各种组合条件。

因果图法比较合适输入条件比较多的情况,测试所有的输入条件的排列组合,所谓的原因就是输入,所谓的结果就是输出。

因果图的“因”—输入条件

因果图的“果”—输出结果

因果图法要注意考虑:

1.所有输入/输出条件的相互制约关系以及组合关系

2.输入条件的依赖关系,也就是什么样的输入组合会产生怎么样的输出结果,即“因果关系”

因果图中的基本符号:



6.2构造测试用例方法 ① 分析需求中描述的原因和结果,给每个原因和结果赋予一个编号。② 根据这些关系画出因果图③ 因果图上用一些记号表明约束条件或限制条件④ 把因果图转换成判定表⑤ 将判定表的每一列作为依据设计测试用例 6.3举例

售货机:简化情况,假设投币只有1元和5毛两种;零钱默认都是5毛;有橙汁和可乐两种饮料,饮料价格均为5毛;机器没零钱的时候零钱找完的灯会亮

梳理输入与输入,输入与输出之间的约束关系
输入:
(1)售货机有零钱
(2)投币1元
(3)投币5毛
(4)按橙汁按钮
(5)按可乐按钮
输出:
(21)零钱找完的灯亮
(22)退回1元
(23)退回5毛
(24)出橙汁
(25)出可乐
输入与输入的约束关系:
(2)、(3)是异的关系,至多出现一个,可能一个都不发生
(4)、(5)是异的关系,至多出现一个,可能一个都不发生
输入与输出的约束关系:
(1)、(21)是非的关系

因果图如下:


根据因果图,判定表如下:

七、 输入域覆盖法 7.1简介

输入域覆盖是指根据SRS(需求分析文档)结合等价类划分法和边界值分析法的一种测试方法,主要是对输入的特殊值和类型边界补充测试用例。

八、 输出域覆盖法 8.1简介

输出域覆盖是指在了解程序功能的所有输出后,查看测试用例中所有的输入产生的输出结果是否能够涵盖所有输出结果,如果不完善,则根据输出结果推导出相应的输入数据,将其补充到测试用例中。

九、 猜错法 9.1简介

猜错法是基于经验和直觉,以及参考以往测试结果中出现较频繁及较隐蔽的错误,从而推测出程序所有可能出现的错误或异常,选择这些情况下的用例进行测试。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。