测试用例设计

一、什么是测试用例

就像开发人员写代码一样,测试人员写用例。

测试用例就是:设计和开发一个能够检验软件是否按照预先设定的步骤和输入内容,进行正常的运行,并给出预定结果的一个方案。

如果计算机程序按照测试用例中设计的步骤和输入内容运行,能得到预先设定的结果,则说明该程序的这个功能没有缺陷。

若是不能得到预先设定的结果,则说明该程序的这个功能有缺陷。

测试人员发现缺陷之后,则应该记录并保存该缺陷,将其报告给对应的开发工程师或者其他人员进行修改。

等待开发人员(相关人员)修复和处理完成后,测试人员应该重新测试,确保缺陷却是被修复成功。

测试用例包含的内容:

1、测试目的。是一个测试用例的直接目标。并且,每一个测试用例的目的都不相同。

2、测试步骤。就是指操作软件的步骤和过程。

3、输入数据。测试中软件需要输入的内容。(不是所有的软件都需要输入,需要输入的时候再进行输入)

4、预期结果。是判断软件执行结果的标准。软件执行后,有没有缺陷,依赖预期结果。

5、测试用例编号。就是能够保证快速找到测试用例的一个唯一的编号。

6、依赖用例。测试的时候,有些测试和操作需要优先进行,有些需要稍后进行。

7、测试环境。指的就是测试执行的时候,所需要的计算机硬件、软件和操作系统、网络状态、或者其他情形。

8、优先级。是否某些测试优先进行。可以从测试的成本上、业务的先后关系上进行考虑。

9、测试用例的设计人。设计测试用例的人。

10、测试用例的执行人。按照测试用例设计的步骤和相关内容,执行测试用例。

11、设计时间。

12、执行时间。

13、所属模块。该测试用例属于哪一个软件功能或者系统模块。

二、设计测试用例的好处和目的

1、可以规范测试过程。

2、在版本更新的测试中,可以节省时间,提高效率。

3、有助于记录软件测试中的缺陷。

4、方便记录测试的工作进度。——像“黑客”

三、设计测试用例的方法

1、测试用例的步骤:按照软件的操作方式进行规划。

2、测试用例的数据:选择科学的数据进行测试。

测试用例选择数据的两个方式——测试用例设计方法之等价类划分法。

什么是等价类划分?

例如,一个只能做加法运算的计算器,测试的时候,进行了1+1、1+2、1+8、1+9的测试后,还需要做其他的测试么?

要!——不测试的话,不能保证计算是正确的。

不要!——太多了,没时间。

原理:将一个输入数据的全部作为主体,符合输入要求的称为有效等价类,不符合输入要求的称为无效等价类。

测试的时候,选择该类中的一个数据,作为代表,如果这个数据没有发现软件的缺陷,则说明这一类数据都不会产生软件的缺陷。

反之,则认为这一类数据都会产生软件的缺陷。

划分等价类的原则:

1)如果输入内容限制了输入的个数或者长度,则可以划分一个有效等价类,和两个无效等价类。例如,姓名输入要求2~5和汉字。

2)如果输入内容限制了大小或者取值范围,则可以划分一个有效等价类,和两个无效等价类。例如,成绩输入要求0~100分。

3)如果输入内容必须是某一个值,则可以划分一个有效等价类,和一个无效等价类。例如,身份证号的位数为18位。

4)如果输入内容需要从一个列表数据中选择,则可以划分N个有效等价类,没有无效等价类。例如,收货地址的省份选择。

5)如果遇到了不是以上内容的,结合实际情况进行判断。

举例说明等价类划分法应用:

1)首先找出所有的有效等价类和无效等价类。

有效等价类

无效等价类

两种字符:字母、数字、下划线

只包含一种字符:字母、数字、下划线

三种字符都包含

大于12个

6~12个字符

小于6个

唯一的

重复的

包含除了字母、数字、下划线的符号

2)挑选每一个等价类中的代表性数据.

注意,有效等价类中的数据,要满足所有的要求。

无效等价类中的数据,只需要(只能)违反一项规则。

yang123

yangkaikai

yang_123

杨kaikai123

yangkaikai123

yang2

3)设计测试用例。在测试用例的数据中,使用等价类划分法挑选出的数据。

作业:

1、分析邮箱、密码的输入有效等价类和无效等价类,分别列举这一类中的代表性数据。

2、写出5条测试用例。

测试用例设计方法——边界值分析法。

俗话说“常在河边走,哪能不湿鞋?”

测试中,特别需要注意软件运行时的各种边界或者临界点问题。

例如,微信发红包(一对一的),最多能发200元,最少0.01元。所以,边界可以分析出来:0.01和200.因此我们测试的时候还要再分析:0和200.01

再比如,淘宝的购物车,最多能放99件商品。不放商品(0件商品),购物车可以打开;放99件商品,购物车可以打开。是否能放入100件商品。

再比如,购买商品的时候,一件商品能够购买的数量取决于:1)商家限定购买数量  2)购物平台限定的购买数量  3)商品库存数量

所以:边界值就是软件运行时,各种条件的限制中,处于最大、最小位置的数据。

测试中还需要考虑最大值、最小值附近的相关数据。(次边界)

思考:

1)如果一个程序的文本输入,要求输入的数值是整数,取值范围是:

-99≤x≤99.测试的时候需要考虑的边界值分别是哪几个?

2)如果一个程序的文本输入,要求输入的数值是整数,取值范围是:

-99<x<99.测试的时候需要考虑的边界值分别是哪几个?

所以:边界值其实就是有效数据和无效数据的分界。

思考:尝试分析用户注册时,各项输入数据的边界值。

测试用例设计需要注意的:

1、测试目的需要清楚,能够精准到明确指出测试点。

2、测试目的描述和具体的测试数据之间要一致。

3、除非测试需要使用重复数据,否则每一条测试用例的数据都要不一样。

4、测试目的、预期结果、数据之间不能冲突。

5、唯一、不重复的数据测试的时候,测试其中的一个方面即可。

6、设计和编写测试用例的时候,正向的测试(输入数据和操作是符合需求)写前面,反向的测试(输入数据或者操作是不符合需求)写后面。——如果正向的测试都不通过,反向测试可以不进行。

THE END
< <上一篇
下一篇>>