一,测试用例 

1,什么是测试用例,什么是测试肢本,两者的关系是什么:

为实施测试而向被测试系统提供的输入数据、操作或各种环境设置以及期望结果的一个特定的集合。

主要记录了测试的过程,步骤,输入的数据,预期结果等内容,执行测试之前写的指导测试过程的文档,包括:编号,测试目的,用例描述,预期结果;

测试脚本是为了进行自动化测试而编写的脚本。

测试脚本的编写必须对应相应的测试用例

2,写测试的用例的依据是什么:

相关文档(需求,开发文档,用户手册),结合开发出的软件,讨论沟通;

3,编写用例的方法:

等价类划分,边界值,因果图,判定表,正交排列法,场景法,测试大纲方法,状态转换图;

二,等价类划分

1,等价类划分属于典型的功能测试方法,根据程序对数据的要求,把程序的输入域划分成若干个部分,区分出哪些数据是有效的,哪些数据是无效的,从每个部分中选取少数代表性数据作为测试用例,这样,每一类的代表性数据在测试中的作用都等价于这类中的其他值;

2,应用场合:

只要有数据输入的地方就可以使用,从无限多的数据中选取少数代表性的数据进行测试;

3,核心概念:

3-1,有效等价类: 对程序规格有意义,合理的输入数据集合,程序接收到有效等价类数据,可以正确执行,计算;

3-2,无效等价类:对程序规格无意义,不合理的输入数据集合,程序接收到无效等价类数据,应该给出错误提示,或者要本不让用户输入;

注意:穷举测试是不现实的,但不做穷举测试会存在风险,编写用例的方法,就是使用更合理的数据,在最少的测试成本情况下,尽可能降低风险;

4,一般步骤:

划分等价类,细划等价类划分,建立等价类表,编写测试用例;

5,等价类划分经验:

5-1,有效等价类一般可以直接在需求中找到;

5-2,无效等价类:

5-2-1,必填项(不能为空)——为空

5-2-2,不能重复的——重复

5-2-3,数据有范围要求——超出范围

5-2-4,有字符个数要求——超出范围

5-2-5,填写项允许的格式,样式(整数,小数,字符)

5-2-6,针对于小数,小数点后位数要求

说明:每个控件的有效等价类和有效边界值的数据不会完全相等,会造成编写用例时数据的冗余(测试过的数据再选一次或多次)

二,边界值

1,应用场合:

只要有数据输入的地方,有效无效数据的分界点,需要单独拿出来测试;

注意:边界值一般和等价类方法一起应用,找到有效无效数据的分界点(最大值和最小值)及其两边的点进行测试,形成一套完整的测试方案;

2,如何使用:

将边界值的点(一般3个点)单独写用例;

说明:边界值的数据本质上可以归为有效和无效的范畴,但从测试技术角度来讲,需要单独拿出来测试;

3,用例的优化:

3-1,对于不同控件的有效等价类及有效的边界值,可以尽可能在一条用例中进行测试,不同控件的有效等价类(及边界)可以组合,减少用例数量;

3-2,在一条用例中,先一次只测试一个控件的无效等价类,无效等价类在开始的时候不能组合,避免“屏蔽”现象发生,前面控件的错误提示一出现,后面控件的错误不会提示;

3-3,可以适当考虑无效等价类的组合,验证软件处理极端数据的能力;

三,因果图法

1,应用场合:

在一个界面中,有多个控件测试的时候,要考虑控件的组全关系,不同的控件组合会产生不同的输出结果的组合,为了弄清什么样的输入组全会产生什么样的输出组合,使用因果图法;

2,核心:

因——原因,输入条件 ;果——结果,输出结果;

使用图形的方式,分析软件输入和输出的对应关系;

3,图形符号:表示输入和输出的对应关系

3-1,基本图形:表示输入和输出的对应关系

3-1-1,恒等(——):若原因出现,则结果出现;若原因不出现,则结果也不出现;

3-1-2,非(~):若原因出现,则结果不出现;若原因不出现,则结果出现;

3-1-3,或(V):若几个原因中有一个出现,则结果出现;若几个原因都不出现,则结果不出现;

3-1-4,与(^):若几个原因都出现,则结果出现;若其中有一个原因不出现,则结果不出现;

3-2,约束(限制条件)图形:只能单独限制输入,或者单独限制输出

3-2-1,互斥(E):表示如果有 a,b,c 三个原因,它们不会同时成立,最多只有一个成立;

3-2-2,包含(I):表示如果有 a,b,c 三个原因,它们至少有一个必须成立;

3-2-3,唯一(O):表示如果有 a,b,c 三个原因,它们必须有且只有一个成立;

说明:唯一的情况有默认值,而互斥没有默认值;

3-2-4:要求(R):表示如果有 a,b 两个原因,如果 a 出现,b 也必须出现;

3-2-4:屏蔽(M):表示若 a=1,则 b 必须为 0;而当 a 为 0 时,b 的值不确定

4,使用因果图法分析程序:

4-1,找出所有的原因(输入),编号——初步分析需求;

4-2,找出所有的结果(输出),编号——初步分析需求;

4-3,在步骤 1 的基础上,找到输入的限制关系和组合关系——深入分析需求;

4-4,在步骤 2 的基础上,找到输出的限制关系和组合关系——深入分析需求;

4-5,找到输入组合和输出组合的对应关系(什么样的输入组合会产生什么样的输出组合);

4-6,根据因果图,画出判定表;

4-7,根据判定表编写用例,把判定表的一列转换成一条用例

5,因果图法的局限性:

每个控件的条件(或取值)最好为 2 个或 3 个,比喻按钮按下或不按下,复选框选择还是不选择,单选按钮选还是不选,只有两三项的下拉框

说明:判定表法就是因果图法的简化,步骤完全一样,不用画图而已;

四,正交排列法

1,应用场合:在一个界面中,有多个控件,每个控件有多个取值,控件取值的组合数据很大,不可能(也没有必要)为每一种组合编写一条用例。如何使用最少最优的组合进行测试——正交排列法

2,区别:判定表(因果图)也是考虑控件组合,但是组合数据较少(一般不会超过20种)而且要求测试全面

3,概述:使用最小的测试过程集合获得最大的测试覆盖率;

4,正交表:

n:是表的行数,也就是需要测试组合的次数

K:是表的列数,表示控件的个数(因素的个数,或因子个数)

m:是每个控件包含的取值个数(各因素的水平数,即各因素的状态数)

 

posted on 2019-02-25 18:14  独自的独行  阅读(145)  评论(0)    收藏  举报