文档库 最新最全的文档下载
当前位置:文档库 › 正交矩阵测试用例举例

正交矩阵测试用例举例

正交矩阵测试用例举例
正交矩阵测试用例举例

测试例集设计和估计指导

目的

本文以一个转帐功能为例介绍了测试例估计和设计的方法。

例子说明

进行测试例估计和设计的依据是需求规格说明书和设计说明书。一般的步骤如下:

1.分析影响测试对象的要素;

2.为每个要素确定取值;

3.使用标准直角矩阵生成初始测试例集;

4.在初始测试例集上依据对测试对象的分析来进行测试例集的修改;

5.把测试例转化为可以测试执行使用的测试例。

例如在对某一应用系统的转账功能进行测试过程中,利用正交矩阵生成测试用例步骤如下:

1

图表1

注:P表示影响测试规格要素个数;L表示影响测试规格要素的最大取值个数在本例中P=5,L=4

2.生成标准测试例集矩阵:

根据以上约束条件分析得出的P、L值,对应直角矩阵测试例生成工具得出以下测试例矩阵

图表2

说明:首先分析第一个要素“用户权限”,其取值只有2个,即“用户权限”的值只有可能是1或2,这样3和4的取值所在的情况就可以删除,之后在考虑“用户权限”的2个取值的具体情况,一个是用户权限有效(1),另一个是用户权限无效(2),当取值为有效时,所有的情况都可以保留,当取值为无效时,只保留一个就可以了(一旦最高优先级的条件不能满足,那么其他低优先级的条件就不需要考虑),然后用同样的方法判断其他的条件,最后等到一个临时结果(编号1,2,5),这时可以从最后一个要素开始分析,要使最后一个要素有意义那前4个要素必须都成立(值为1),而要素“转帐方式”有4种取值而现在的结果中有效情况只有一种(No1),所以可以增加3种(即,见表4中No2,3,4)。现在考虑要素“转帐金额”,可以增加在前3个要素都成立时,“转帐金额”取值为大于用户实际金额的情况(即,见表4中No5)。接着考虑要素“帐号”,可以增加在前2个要素都成立时,“帐号”取值为帐号无效的情况(即,见表4中No6)。接着考虑要素“票据号”,可以增加在第一个要素都成立时,“票据号”取值为票据号无效的情况(即,见表4中No7)。这样就补齐了所有的情况,从而得到最终结果(表5)

3.筛选测试矩阵:

注:由于测试例矩阵是根据影响要素条件最大取值个数得出,因此不是所有影响要素的取值个数都与最大值相等,因此应将矩阵中不存在的测试例条件删除。

图表3

4.修改测试矩阵:

注:由于测试例矩阵是根据影响要素条件最大取值个数得出的,因此在删除测试例时应将因此导致测试矩阵范围不完整的测试例补充完整。

说明:编号5,6,7,8的情况中有“-”,其意义为“取任何值都不影响结果”

图表4

5.生成测试用例:

图表 5

说明

使用直角矩阵的方法可以进行最初的测试分析设计和估计,但是随着项目的进展,测试组对系统的理解会逐渐加深,因此需要根据需要多次进行测试分析设计和估计。

正交试验设计法 黑盒测试

黑盒测试案例设计技术--正交试验法 利用因果图来设计测试用例时,作为输入条件的原因与输出结果之间的因果关系,有时很难从软件需求规格说明中得到。往往因果关系非常庞大,导致利用因果图而得到的测试用例数目多得惊人,给软件测试带来沉重的负担。为了有效地、合理地减少测试的工时与费用,可利用正交试验法进行测试用例的设计。 正交试验设计方法 根据Galois理论,正交试验设计方法是从大量的试验数据中挑选适量的、有代表性的点,从而合理地安排测试的一种科学的试验设计方法。 正交试验法,就是使用已经造好了的表格---正交表来安排试验并进行数据分析的一种方法。它简单易行并且计算表格化,应用性较好。下面通过一个例子来说明正交试验法。 例:为提高某化工产品的转化率,选择了三个有关因素进行条件试验,反应温度(A),反应时间(B),用碱量(C),并确定了它们的试验范围如下: ● A:80~90C° ● B:90~150分钟 ●C:5%~7% 试验目的是搞清楚因子A、B、C对转化率有什么影响,哪些是主要的,哪些是次要的,从而确定最适生产条件,即温度、时间及用碱量各为多少才能是转化率最高。这里,对因子A、B、C,在试验范围内都选了三个水平,如下所示:

● A:A1=80C°, A2=85C°,A3=90C° ● B:B1=90分钟,B2=120分钟,B3=150分钟 ● C:C1=5%,C2=6%,C3=7% 当然,在正交试验设计中,因子是可以定量的,也可以是定性的。而定量因子各水平间的距离可以相等,也可以不相等。这个三因子三水平的条件试验,通常有两种试验方法: ①取三因子所有水平之间的组合,即A1B1C1,A1B1C2,A1B2C1,……,A3B3C3,共有3×3×3=27次试验。用下图表示立方体的27个结点。这种试验法叫做全面试验法。 全面试验对各因子与指标间的关系剖析的比较清楚。但试验次数太多,特别是当因子数目多,每个因子的水平数目也很多时,试验量非常大。如选6个因子,每个因子取5个水平时,如要做全面试验,则需要5×5×5×5×5×5=15625次试验。

用正交实验法设计测试用例

用正交实验法设计测试用例 正交实验法的由来 一、正交表的由来 拉丁方名称的由来 古希腊是一个多民族的国家,国王在检阅臣民时要求每个方队中每行有一个民族代表,每列也要有一个民族的代表。 数学家在设计方阵时,以每一个拉丁字母表示一个民族,所以设计的方阵称为拉丁方。 什么是n阶拉丁方? 用n个不同的拉丁字母排成一个n阶方阵(n<26 ),如果每行的n个字母均不相同,每列的n个字母均不相同,则称这种方阵为n*n拉丁方或n阶拉丁方。每个字母在任一行、任一列中只出现一次。 什么是正交拉丁方? 设有两个n阶的拉丁方,如果将它们叠合在一起,恰好出现n2个不同的有序数对,则称为这两个拉丁方为互相正交的拉丁方,简称正交拉丁方。 例如:3阶拉丁方 用数字替代拉丁字母: 二、正交实验法

正交试验设计(Orthogonal experimental design)是研究多因素多水平的又一种设计方法,它是根据正交性从全面试验中挑选出部分有代表性的点进行试验,这些有代表性的点具备了“均匀分散,齐整可比”的特点,正交试验设计是分式析因设计的主要方法。是一种高效率、快速、经济的实验设计方法。 日本著名的统计学家田口玄一将正交试验选择的水平组合列成表格,称为正交表。例如作一个三因素三水平的实验,按全面实验要求,须进行33=27种组合的实验,且尚未考虑每一组合的重复数。若按L9(33) 正交表按排实验,只需作9次,按L18(37) 正交表进行18次实验,显然大大减少了工作量。因而正交实验设计在很多领域的研究中已经得到广泛应用。 利用因果图来设计测试用例时, 作为输入条件的原因与输出结果之间的因果关系,有时很难从软件需求 规格说明中得到。往往因果关系非常庞大,以至于据此因果图而得到的测试用例数目多的惊人,给软件测试带来沉重的负担,为了有效地,合理地减少测试的工时与费用,可利用正交实验设计方法进行测试用例的设计。 正交实验设计方法:依据Galois理论,从大量的(实验)数据(测试例)中挑选适量的、有代表性的点(例),从而合理地安排实验(测试)的一种科学实验设计方法。类似的方法有:聚类分析方法、因子方法方法等。 三、利用正交实验设计测试用例的步骤: (1)提取功能说明,构造因子--状态表 把影响实验指标的条件称为因子,而影响实验因子的条件叫因子的状态。 利用正交实验设计方法来设计测试用例时,首先要根据被测试软件的规格说明书找出影响其功能实现的操作对象和外部因素,把他们当作因子;而把各个因子的取值当作状态。对软件需求规格说明中的功能要求进行划分,把整体的、概要性的功能要求进行层层分解与展开,分解成具体的有相对独立性的、基本的功能要求。这样就可以把被测试软件中所有的因子都确定下来,并为确定每个因子的权值提供参考的依据。确定因子与状态是设计测试用例的关键。因此要求尽可能全面的、正确的确定取值,以确保测试用例的设计作到完整与有效。 (2)加权筛选,生成因素分析表 对因子与状态的选择可按其重要程度分别加权。可根据各个因子及状态的作用大小、出现频率的大小以及测试的需要,确定权值的大小。 (3)利用正交表构造测试数据集 利用正交实验设计方法设计测试用例,比使用等价类划分、边界值分析、因果图等方法有以下优点:节省测试工作工时;可控制生成的测试用例数量;测试用例具有一定的覆盖率。 在使用正交实验法时,要考虑到被测系统中要准备测试的功能点,而这些功能点就是要获取的因子或因素,但每个功能点要输入的数据按等价类划分有多个,也就是每个因素的输入条件,即状态或水平值。 四、正交表的构成 行数(Runs):正交表中的行的个数,即试验的次数,也是我们通过正交实验法设计的测试用例的个数。

测试用例设计思路举例(参考)

ECShop2.7.2用例设计思路举例 说明 用例设计方法的运用非常灵活,没有绝对的套路可言,以下用例设计思路仅供参考。 操作流程举例 参考文档: ?ECShop_2.7.2_简易操作手册V1.0, ?B2C商城ECShop需求规格说明书_2.7.2V1.0 设计思路: 根据操作手册,理清业务逻辑前后关系,再结合SRS文档确定具体的流程细节和分支流程。可以通过画流程的方式梳理流程(流程分析法),下面是部分主流程的案例: ?正向订单流程_余额付款 1)前台页面浏览商品->加入购物车->结算中心->余额付款 2)后台管理中心订单查询->配货->生成发货单->确认生成发货单->去发货->发货 3)前台页面确认收货END ?正向订单流程_货到付款 1)前台页面浏览商品->加入购物车->结算中心->货到付款 2)后台管理中心订单查询->配货->生成发货单->确认生成发货单->去发货 ?逆向订单流程 1)前台页面确认收货->后台管理中心退货->填写退货信息点确定按钮->确认退货 ?商品添加流程_新商品 1)后台管理中心商品管理->新建商品类型/新建商品分类/新建商品品牌->添加新商品(通用信息,详细描述,其他信息,商品属性,商品相册,关联商品,配件,关联 文章) 考虑完所有流程后,再补充考虑部分异常情况,例如:流程中的先后顺序发生变化,或者跳过某个步骤后,系统能否完成后续流程作业。(有些流程是不可能调换顺序或跳过的) Q:流程分析法在设计测试用例的时候会经过很多页面,操作很多字段,这些页面和字段该如何取值呢? A:流程分析法一般考虑页面或字段的有效取值(一般取等价类中最不容易出错的值),测试过程中不关注页面输入域的各种取值情况,特别是错误取值的情况。目的是为了确保流程是可用的。 Q:流程分析法既然不能证明某个页面或字段没有问题,那用此法有何意义呢,为何不直接考虑验证每个页面和模块的各种有效和无效的取值?

软件测试用例模板

软件测试用例模板

用例编号TestCase_LinkWorks_WorkEvaluate 项目名称LinkWorks 模块名称WorkEvaluate模块 项目承担部门信息部 用例作者 完成日期2015-5-27 评审负责人 审核日期 批准日期 注:本文档由测试组提交,审核由测试组负责人签字,由项目负责人批准。历史版本: 版本/状态作者参与者起止日期备注 V1.1 一、功能测试用例 此功能测试用例对测试对象的功能测试应侧重于所有可直接追踪到用例或业务功能和业务规则的测试需求。这种测试的目标是核实数据的接受、处理和检索是否正确,以及业务规则的实施是否恰当。主要测试技术方法为用户通过GUI (图形用户界面)与应用程序交互,对交互的输出或接受进行分析,以此来核实需求功能与实现

功能是否一致。 用例标识LinkWorks_ WorkEvaluate _02 项目 名称 https://www.wendangku.net/doc/7513930025.html, 开发人员模块 名称 WorkEvaluate 用例作者参考 信息 工作考核系统界面设计 (2005_03_28).vsd 测试类型设计 日期 2006-9- 27 测试 人员 测试方法黑盒测试 日期 用例描述前置条件 编号权 限 ( 并 列 测试项测 试 类 别 描述/输入/操 作 期望结果真 实 结 果 备 注

关系) 000 01 无列 表 页 面 导航栏导 航 测 试 浏览\点击导 航连接 详细正确 导航页面 所在位置 000 02 添加删 除修改 按钮 添加修改删 除按钮是否 可用 不可用 000 03 接受、 汇报按 钮 1)不是自 己负责的 数据未考 核之前能 否接受\汇 报 不能 2)属于自 己负责的 未接受之 前时候是 否可以接 受 能

测试用例设计方法之因果图法

测试用例设计方法之因果图法 (一)因果图法的来源 大家熟悉的等价类划分法和边界值分析法,都是着重考虑输入条件,但未考虑输入条件之间的联系、相互组合等; 但是,如考虑所输入条件之间的相互组合,会由于组合情况数目相当大,需要大量的测试用例; 因果图法,是一种帮助人们系统地选择一组高效率测试用例的方法。(二)因果图法的特点 考虑输入条件间的组合关系; 考虑输出条件对输入条件的信赖关系,即因果关系; 测试用例发现错误的效率高; 能检查出功能说明中的某些不一致或遗漏; 因果图方法最终生产的就是判定表,它适合于检查程序输入条件和各种组合情况。 (三)因果图法基本步骤 1.分割功能说明书 对于规模比较大的程序来说,由于输入条件的组合数太大,所以很难整体上使用一个因果图。我们可以把它划分为若干部分,然后分别对每个部分使用因果图。例如,测试编译程序时,可以把每个语句作为一个部分。 2.识别出“原因”和“结果”,并加以编号 所谓原因,是指输入条件或输入条件的等价类;而结果则是指输出条件或输出条件的等价类。每个原因或结果都对应于因果图中的一个节点。当原因或结果成立(或出现)时,相应的节点取值为1,否则为0。 例如,有一个饮料自动售货机(处理单价为5角钱)的控制处理软件,它的软件规格说明如下: 若投入5角钱的硬币,按下“橙汁”或“啤酒”的按钮,则相应的饮料就送出来。若投入1元钱的硬币,同样也是按“橙汁”或“啤酒”的按钮,则自动售货机在送出相应饮料的同时退回5角钱的硬币。

分析这一段说明,我们可以列出原因和结果。 原因如下: ?投入1元硬币; ?投入5角硬币; ?按下“橙汁”按钮; ?按下“啤酒”按钮 结果 ?退还5角钱; ?送出“橙汁”饮料; ?送出“啤酒”饮料 3.根据功能说明书中规定的原因和结果之间的关系画出因果图 因果图的基本符号如图1所示: 1.因果图的基本符号 图中左边的节点表示原因,右边的节点表示结果。恒等、非、或、与的含义: ?恒等:若a=1,则b=1;若a=0,则b=0; ?非:若a=1,则b=0,若a=0,则b=1; ?或:若a=1或b=1或c=1,则d=1;若a= b= c=0,则d=0; ?与:若a= b= c=1,则d=1;若a=0或b=0或c=0,则d=0。 画因果图时,原因在左,结果在右,由上而下排列,并根据功能说明书中规定的原因和结果之间的关系,用上述基本符号连接起来。在因果图中还可以引入一些中间节点。

正交试验设计常用正交表分析

选用正交表。根据提供的因素和水平进行正交表的选择, 选择的方法为试验的水平作为正 交表的水平, 试验的各个因素小于或等于正交表的列数,表格中没有数据的项空掉即可。 可以数据公式分析影响因子,也可以软件表征结果 (1) L 4(23) 任意两列间的交互作用为另外一列 (2) L 8(27) L 8(27)二列间的交互作用表 1 2 3 1 1 1 1 2 1 2 2 3 2 1 2 4 2 2 1 1 2 3 4 5 6 7 1 1 1 1 1 1 1 1 2 1 1 1 2 2 2 2 3 1 2 2 1 1 2 2 4 1 2 2 2 2 1 1 5 2 1 2 1 2 1 2 6 2 1 2 2 1 2 1 7 2 2 1 1 2 2 1 8 2 2 1 2 1 1 2 1 2 3 4 5 6 7 (1) 3 2 6 4 7 6 (2) 1 5 7 4 5 (3) 7 6 5 4 (4) 1 2 3 (5) 3 2 (6) 1 (7) 列 号 试 验 号 列 号 试 验 号 列 号 列 号

L 8(27)表头设计 1 2 3 4 5 6 7 3 A B A ×B C A ×C B ×C 4 A B A ×B C ×D C A ×C B ×D B ×C A ×D D 4 A B C ×D A ×B C B ×D A ×C D B ×C A ×D 5 A D ×E B C ×D A × B C ×E C B ×D A ×C B ×E D A × E B ×C E A ×D (3) L 8(4×24) L 8(4×24)表头设计 1 2 3 4 5 2 A B (A ×B)1 (A ×B)2 (A ×B)3 3 A B C 4 A B C D 5 A B C D E 1 2 3 4 5 1 1 1 1 1 1 2 1 2 2 2 2 3 2 1 1 2 2 4 2 2 2 1 1 5 3 1 2 1 2 6 3 2 1 2 1 7 4 1 2 2 1 8 4 2 1 1 2 列 号 因 子 数 列 号 试 验 号 列 号 因 子 数

测试用例设计方法

测试用例设计方法 一、等价类划分 等价类划分主要适用于单个输入条件,输入为数值型的情况,如果输入规定了输入区间,可划分出一个有效等价类,两个无效等价类;如果输入只规定了输入范围,可划分出一个有效等价类,一个无效等价类。 二、边界值 边界值方法也是适用于单个输入条件的情况,输入类型可以数值、字符等,要测试的边界包括上点、下点、离点。 三、错误推测法 错误推测法主要是测试设计人员的测试经验相关,测试经验不同,设计出来的测试用例也区别很大。 四、因果图法 因果图方法考虑输入的组合,特别适用于多个输入条件相关有关联又相互约束的情况。 设计步骤: 1)罗列出输入与输出; 2)根据输入与输出画出因果图; 3)标出约束跟限制; 4)把因果图转化成判定表; 5)根据判定表的每一列设计测试用例。 五、判定表驱动法 判定表适合于解决多个逻辑条件的组合。将各种逻辑的组合罗列出来,避免遗漏。不能表达重复的操作。 判定表包括条件桩、条件项、动作桩、动作项。 条件桩:列出所有条件,次序无关; 条件项:列出所对应条件的所有可能情况下的取值,如Y或N; 动作桩:列出可能采取的操作,次序无关; 动作项:列出条件项各种取值情况下采取的操作,如X表示。 设计步骤: 1)确定规则个数,条件及各条件取值的组合; 2)列出条件桩、动作桩; 3)列出条件项;

4)列出动作项; 5)初始化判定表; 6)规则简化、合并。 实践方法: Step1:确定规则的个数(假如有n个条件,每个条件有两个取值(0,1),固有2的n 次方种规则); Step2:列出所有的条件桩和动作桩; Step3:填入条件项(如Y或N); Step4:填入动作项(X); Step5:简化合并相似规则(整列) 合并原则一般为:1、以相同动作项出发;2、相同的条件项直接合并;3、相反的条件忽略(注:此处为一般情况,需结合业务再次明确其必要性,否则不予合并) 判定表的优点和缺点: 1)优点:它能把复杂的问题按各种情况一一列举出来,简明而易于理解,也可避免遗漏; 2)缺点:不能表达重复执行的动作,例如循环结构。 选择黑盒测试用例设计方法的综合策略 小贝书屋 | 2016-03-16 22:00 具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法、场景法等。这些方法都是比较实用的,但在具体工作中要采用什么方法,需要针对项目的特点加以适当的选择。在实际高水平的测试中,往往需要综合使用各种方法以有效的提高测试效率和测试覆盖度。 以下介绍的是各种测试用例设计方法选择的综合策略,供大家参考。 (1)首先进行等价类划分,包括输入条件和输出条件的等价划分,将无限测试变成有限测试,这是减少工作量和提高测试效率最有效的方法。 (2)在任何情况下,都必须使用边界值分析法。经验表明,用这种方法设计出的测试用例发现程序错误的的能力最强。 (3)可以使用错误推测法追加一些测试用例,这需要依靠测试工程师的智慧和经验。 (4)对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度。如果没有达到要求的覆盖标准,应当再补充足够的测试用例。 (5)如果程序的功能说明中含有输入条件的组合情况,则一开始就可以选用因果图法和判定表驱动法。(6)对于参数配置类的软件,要用正交试验法选择较少的组合方式达到最佳效果。 (7)利用功能图法,我们可以通过不同时期条件的有效性设计不同的测试数据。 (8)对于业务流清晰的系统,可以利用场景法贯穿整个测试案例设计过程,在案例中综合使用各种测试方法。

正交测试步骤

三、利用正交实验设计测试用例的步骤: (1)提取功能说明,构造因子--状态表 把影响实验指标的条件称为因子,而影响实验因子的条件叫因子的状态。 利用正交实验设计方法来设计测试用例时,首先要根据被测试软件的规格说明书找出影响其功能实现的操作对象和外部因素,把他们当作因子;而把各个因子的取值当作状态。对软件需求规格说明中的功能要求进行划分,把整体的、概要性的功能要求进行层层分解与展开,分解成具体的有相对独立性的、基本的功能要求。这样就可以把被测试软件中所有的因子都确定下来,并为确定每个因子的权值提供参考的依据。确定因子与状态是设计测试用例的关键。因此要求尽可能全面的、正确的确定取值,以确保测试用例的设计作到完整与有效。 (2)加权筛选,生成因素分析表 对因子与状态的选择可按其重要程度分别加权。可根据各个因子及状态的作用大小、出现频率的大小以及测试的需要,确定权值的大小。 (3)利用正交表构造测试数据集 利用正交实验设计方法设计测试用例,比使用等价类划分、边界值分析、因果图等方法有以下优点:节省测试工作工时;可控制生成的测试用例数量;测试用例具有一定的覆盖率。 在使用正交实验法时,要考虑到被测系统中要准备测试的功能点,而这些功能点就是要获取的因子或因素,但每个功能点要输入的数据按等价类划分有多个,也就是每个因素的输入条件,即状态或水平值。 四、正交表的构成 行数(Runs):正交表中的行的个数,即试验的次数,也是我们通过正交实验法设计的测试用例的个数。 因素数(Factors) :正交表中列的个数,即我们要测试的功能点。 水平数(Levels):任何单个因素能够取得的值的最大个数。正交表中的包含的值为从0到数“水平数-1”或从1到“水平数”。即要测试功能点的输入条件。 正交表的形式: L行数(水平数因素数) 如:L8(27) 五、正交表的正交性 整齐可比性 在同一张正交表中,每个因素的每个水平出现的次数是完全相同的。由于在试验中每个因素的每个水平与其它因素的每个水平参与试验的机率是完全相同的,这就保证在各个水平中最大程度的排除了其它因素水平的干扰。因而,能最有效地进行比较和作出展望,容易找到好的试验条件。 均衡分散性 在同一张正交表中,任意两列(两个因素)的水平搭配(横向形成的数字对)是完全相同的。这样就保证了试验条件均衡地分散在因素水平的完全组合之中,,因而具有很强的代表性,容易得到好的试验条件。 用正交实验法设计测试用例 以上介绍了正交实验法的由来。怎么用正交实验法进行用例的设计呢? 一、用正交表设计测试用例的步骤 (1) 有哪些因素(变量) (2) 每个因素有哪几个水平(变量的取值) (3) 选择一个合适的正交表

测试用例的设计步骤

系统测试之功能测试:测试用例的设计步骤 ——从登陆开始说起 一个完整的software testing life cycle包括诸多内容,本文仅从测试用例的编写开始,聊聊测试用例编写的一般步骤,以使编写的测试用例最大程度上满足完备的要求,而又不产生重复而冗余的负担。 测试用例的来源是产品需求,如果足够幸运,我们应当有一份不错的可依赖的Use Case文档,但大部分情况下,Use Case恐怕是不存在,能有一份不错的PRD文档和原型设计图已经是不错的待遇了,如果可能的话,最好还能够有HLD文档,这些已经足够我们开始写详细的测试用例文档(我相信在这之前无法产出详细的测试用例文档①)。也许LLD文档产生之后或者产品的第一个版本发布之后,我们会不断的更新已有的测试用例,但那将是不断的迭代过程,暂不做讨论。 首先让我们先从理论上了解测试用例编写的一般步骤②: 1、确定测试套件(Test Suite):测试套件是功能上的划分,是相似测试场景的组合,而非技术划分。如果技术设计中各模块耦合度较高(强烈推荐解耦,哪怕复制粘贴代码),可能功能上不相干的模块由于代码重用的原因会在bug fix时互相引致错误,实际上回归测试即是为了避免这种情况。但是我们在做功能测试划分模块时,还是要从用户的角度出发,按照用户场景划分测试的“模块”。值得庆幸的是,相似或相关的功能总是倾向于在同一组页面出现,按钮和输入框、选择菜单等内容并不是随机组合的一堆零件。 2、针对每一个测试套件,确定一个或多个基本流程(basic flow)和可选流程(alternative flow),即测试场景(Test Scenario):可以借助scenario matrix来清晰地对可能出现的场景进行排列组合。值得注意的是,一方面Use Case或PRD文档中的描述很有可能并没有完整的写尽所有的场景,测试人员尽可能地挖掘测试场景,既有可能是出于测试本身的需要,也可能是基于开发团队的工作;另一方面,在复杂系统中,测试场景不可能覆盖所有可能的场景,这便需要测试人员采用一定的测试策略③,对SUT (System under Testing)进行“足够(adequate)”的测试,而不是完全的测试。 3、针对每一个测试场景,确定一到多个测试用例(Test Case):仍然可以借助matrix来清晰地规划测试用例,每一个测试用例都有其对应的预置条件④、输入和期望结果。测试用例分为Positive Test Ca se和Negative Test Case两种,分别用来测试产品是否完成应当完成的工作和不执行不应当完成的操作。更详尽地说,测试用例一般包括以下列column:用例编号/测试场景/用例描述/需求对应/用例分类(Positi ve/Negative)/用例类型/用例级别/是否自动化/预置条件/测试步骤/测试数据/预期结果/实际结果/备注/ 4、增加测试数据(Test Data)完成测试用例:测试数据是测试用例中很重要的内容,一个用例可能对应多套测试数据,测试工程师根据某种测试技术⑤,将尽可能的设计较少的测试数据完成“足够”的测试。 任何规范、流程都是为了让工作更加可靠,对于项目工程,天外飞仙灵机一动应当放在合适的位置,而不应当成为规范和流程的反例存在⑥。 现在让我们开始从登陆(PC端网页,如果是PC客户端比如QQ或手机客户端则又不同)开始说起。 不打开任何网站的登陆框,想象一下登陆框的样子。 然后对照一下本文最后的附图,一个优秀的登陆框除了基本的用户名/密码输入框、登陆按钮之外、(不考虑注册、找回密码、第三方登陆、登陆版本、帮助),包含的内容有:输入框文字提示/免登陆选项/输入

测试用例方法

1、等价类方法 是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。 2、边界值 边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。 3、错误推测 基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法。 4、因果图 是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。 5、判定表驱动法 判定表是分析和表达多逻辑条件下执行不同操作的情况的工具。 6、正交表法 利用因果图来设计测试用例时, 作为输入条件的原因与输出结果之间的因果关系,有时很难从软件需求规格说明中得到。往往因果关系非常庞大,以至于据此因果图而得到的测试用例数目多的惊人,给软件测试带来沉重的负担,为了有效地,合理地减少测试的工时与费用,可利用正交实验设计方法进行测试用例的设计。 7、场景法 现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场

景,而同一事件不同的触发顺序和处理结果就形成事件流。这种在软件设计方面的思想也可以引入到软件测试中,可以比较生动地描绘出事件触发时的情景,有利于测试设计者设计测试用例,同时使测试用例更容易理解和执行。 #使用各种测试方法的综合策略: 1)在任何情况下都必须使用边界值分析方法,经验表明用这种方法设计出测试用例发现程序错误的能力最强。 2)必要时用等价类划分方法补充一些测试用例。 3)用错误推测法再追加一些测试用例。 4)对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度,如果没有达到要求的覆盖标准,应当再补充足够的测试用例。 如果程序的功能说明中含有输入条件的组合情况,则一开始就可选用因果图法。#测试用例的设计步骤: 1)构造根据设计规格得出的基本功能测试用例; 2)边界值测试用例; 3)状态转换测试用例; 4)错误猜测测试用例; 5)异常测试用例; 6)性能测试用例; 7)压力测试用例。

正交实验法详解

正交实验法的由来 一、正交表的由来 拉丁方名称的由来 古希腊是一个多民族的国家,国王在检阅臣民时要求每个方队中每行有一个民族代表,每列也要有一个民族的代表。 数学家在设计方阵时,以每一个拉丁字母表示一个民族,所以设计的方阵称为拉丁方。 什么是n阶拉丁方? 用n个不同的拉丁字母排成一个n阶方阵(n<26 ),如果每行的n个字母均不相同,每列的n个字母均不相同,则称这种方阵为n*n拉丁方或n阶拉丁方。每个字母在任一行、任一列中只出现一次。 什么是正交拉丁方? 设有两个n阶的拉丁方,如果将它们叠合在一起,恰好出现n2个不同的有序数对,则称为这两个拉丁方为互相正交的拉丁方,简称正交拉丁方。 例如:3阶拉丁方(图1) 用数字替代拉丁字母:(图2) 二、正交实验法

正交试验设计(Orthogonal experimental design)是研究多因素多水平的又一种设计方法,它是根据正交性从全面试验中挑选出部分有代表性的点进行试验,这些有代表性的点具备了“均匀分散,齐整可比”的特点,正交试验设计是分式析因设计的主要方法。是一种高效率、快速、经济的实验设计方法。 日本著名的统计学家田口玄一将正交试验选择的水平组合列成表格,称为正交表。例如作一个三因素三水平的实验,按全面实验要求,须进行33=27种组合的实验,且尚未考虑每一组合的重复数。若按L9(33) 正交表按排实验,只需作9次,按L18(37) 正交表进行18次实验,显然大大减少了工作量。因而正交实验设计在很多领域的研究中已经得到广泛应用。 利用因果图来设计测试用例时, 作为输入条件的原因与输出结果之间的因果关系,有时很难从软件需求规格说明中得到。往往因果关系非常庞大,以至于据此因果图而得到的测试用例数目多的惊人,给软件测试带来沉重的负担,为了有效地,合理地减少测试的工时与费用,可利用正交实验设计方法进行测试用例的设计。 正交实验设计方法:依据Galois理论,从大量的(实验)数据(测试例)中挑选适量的、有代表性的点(例),从而合理地安排实验(测试)的一种科学实验设计方法。类似的方法有:聚类分析方法、因子方法方法等。 三、利用正交实验设计测试用例的步骤: (1)提取功能说明,构造因子--状态表 把影响实验指标的条件称为因子,而影响实验因子的条件叫因子的状态。 利用正交实验设计方法来设计测试用例时,首先要根据被测试软件的规格说明书找出影响其功能实现的操作对象和外部因素,把他们当作因子;而把各个因子的取值当作状态。对软件需求规格说明中的功能要求进行划分,把整体的、概要性的功能要求进行层层分解与展开,分解成具体的有相对独立性的、基本的功能要求。这样就可以把被测试软件中所有的因子都确定下来,并为确定每个因子的

软件测试方案模板(by LJ.)

测试方案模板 Edit by LJ. 1 概述 1.1 编写目的 [说明编写本测试方案的目的是为软件开发项目管理者、软件工程师、系统维护工程师、测试工程师提供关于**系统整体系统功能和性能的测试指导。] 1.2 读者对象 [本测试方案可能的合法读者对象为软件开发项目管理者、软件工程师、测试组、系统维护工程师] 1.3 项目背景 [可以如下那样简单说明,根据项目的具体情况,方案编写者也可以进行详细说明 项目名称:*** 简称:*** 项目代号:*** 委托单位:*** 开发单位:*** 主管部分:***] 1.4 测试目标 [说明进行项目测试的目标或所要达到的目的] 1.5 参考资料 [列出编写本测试方案时参考的资料和文献]

2 测试配置要求 2.1 网络环境 [在此说明应用系统的网络环境,如果应用系统是网络版的,必须具有本节内容。] 2.1.1 网络硬件 [此处给出网络硬件的拓扑图、名称、规格、数量、配置等信息。] 2.1.2 网络软件 [此处给出网络软件的名称、协议、通讯和连接方式等信息。] 2.2 服务器环境 2.2.1 服务器硬件 [此处给出服务器硬件的名称、规格、数量、配置等信息。] 2.2.2 服务器软件 [此处给出服务器软件名称、协议和版本等信息。] 2.3 工作站环境 2.3.1 工作站硬件 [此处给出工作站硬件的拓扑图、名称、规格、数量、配置等信息。] 2.3.2 工作站软件 [此处给出工作站软件的名称、协议和版本等信息。] 2.4 测试手段 [在此参照《测试计划》说明测试方法和工具,注明执行测试时,必须同时填写《测试记录表》]

2.5 测试数据 [在此简要说明测试数据的形成,如以客户单位具体的业务规则和《***系统需求分析说明书》,参考《***系统概要设计说明书》、《***系统详细设计说明书》和《数据规格说明书》中规定的运行限制,设计测试用例,作为整个**系统的测试数据。] 2.6 测试策略 [在此说明测试策略,可以如下这样说明: 测试过程按三个步骤进行,即单元测试、组装、系统测试,根据不同阶段测试的侧重点不同,分别介绍测试策略: A)单元测试 首先按照系统、子系统和模块进行划分,但最终的单元必须是功能模块,或面向对象过程中的若干个类。单元测试是对功能模块进行正确检验的测试工作,也是后续测试的基础。目的是在于发现各模块内部可能存在的各种差错,因此需要从程序的内部结构出发设计测试用例,着重考虑以下五个方面: 1)模块接口:对所测模块的数据流进行测试。 2)局部数据结构:检查不正确或不一致的数据类型说明、使用尚未附值或尚未初始化的变量、错误的初始值或缺省值。 3)路径:虽然不可能做到穷举测试,但要设计测试用例查找由于不正确的计算(包括算法错、表达式符号表示不正确、运算精度不够等)、不正确的比较或不正常的控制流(包括不同数据类型量的相互比较、不适当地修改了循环变量、错误的或不可能的循环终止条件等)而导致的错误。 4)错误处理:检查模块有没有对预见错误的条件设计比较完善的错误处理功能,保证其逻辑上的正确性。 5)边界:注意设计数据流、控制流中刚好等于、大于或小于确定的比较值的用例。 B)集成测试 集成测试也叫组装测试或联合测试。通常,在单元测试的基础上需要将所有的模块按照设计要求组装成系统,这时需要考虑的问题: 1)在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失。

以中国象棋中走马的测试用例设计为例学习因果图的使用方法

以中国象棋中走马的测试用例设计为例学习因果图的使用方法。 分析中国象棋中走马的实际情况(下面未注明的均指的是对马的说明) 1如果落点在棋盘外,则不移动棋子; 2、如果落点与起点不构成日字型,则不移动棋子; 3、如果落点处有自己方棋子,则不移动棋子; 4、如果在落点方向的邻近交叉点有棋子(绊马腿),则不移动棋子; 5、如果不属于1-4条,且落点处无棋子,则移动棋子; 6、如果不属于1-4条,且落点处为对方棋子(非老将),则移动棋子并除去对方棋子; 7、如果不属于1-4条,且落点处为对方老将,则移动棋子,并提示战胜对方,游戏结束。原因:结果: 1、落点在棋盘上; 2、落点与起点构成日字; 3、落点处为自己方棋子; 4、落点方向的邻近交叉点无棋子; 5、落点处无棋子; 6、洛点处为对方棋子(非老将); 7、洛点处为对方老将。21、不移动棋子; 22、移动棋子; 23、移动棋子,并除去对方棋子; 24、移动棋子,并提示战胜对方,结束游戏。 L2345678 111110000 2]101I00 3L3101c10 11111100 2200001 2101000 23(.1010] 测试 用例 A3 A8 AR A? R5 B4 RN ur Cl X6 SD PS 考虑结果不能同时发生,所以对其施加唯一约束施加异约束E。 根据因果图建立判定表:(分为两表)0。原因5、6、7不能同时发生,所以对其 添加中间节点11,目的是作为导出结果的进一步原因,简化因果图导出的判定表

注:1、以上判定表中由于表格大小限制没有列出最后所选的测试用例;2、第2表中部分列被合并表示不可能发生的现象;3、通过中间节点将用例的判定表简化为两个小表。减少工 作量。 四、根据判定表写测试用例表(略)

测试用例设计—正交试验法

测试用例设计—正交试验法【烟三修整】上一篇 / 下一篇 2008-05-23 14:25:19 / 个人分类:测试理论 查看( 1930 ) / 评论( 3 ) / 评分( 0 / 0 ) 1、概念 1.1正交试验设计(Orthogonal experimental design) 是研究多因素多水平的一种设计方法,它是根据正交性从全面试验中挑选出部分 有代表性的点进行试验,这些有代表性的点具备了“均匀分散,齐整可比”的特点, 正交试验设计是一种基于正交表的、高效率、快速、经济的试验。 1.2、因素(Factor) 在一项试验中,凡欲考察的变量称为因素(变量),也有的地方叫因子。 1.3、水平(位级)(Level) 在试验范围内,因素被考察的值称为水平(变量的取值)。 2、正交表 2.1正交表是一整套规则的设计表格。 正交表的表示形式:Ln(t^c)其中:L为正交表的代号,n为行数(试验次数), t为水平数,c为列数(因素数)。 例如:L4(2^3),它表示需做4次实验,最多可观察3个因素,每个因素均为2水 平。如下图: 一个正交表中也可以各列的水平数不相等,我们称它为混合型正交表,如L8(2^4 4^1),如下图。此表的5列中,有1列为4水平,4列为2水平。根据正交表的数 据结构看出,正交表是一个n行c列的表,其中第j列由数码1,2,… tj 组成,这 些数码均各出现n/t 次,例如图1-1中,第二列的数码个数为2,t=2 ,即由1、2 组成,各数码均出现2次。

mn型的正交表中,试验次数(行数)=∑(每列水平数-1)+1 例:5个3水平因子及一个2水平因子,表示为35*21,试验次数=5*(3-1)+1*(2- 1)+1=12,即L12(3^5 2^1)。 2.2正交表具有以下两项性质: (1) 每一列中,不同的数字出现的次数相等。例如:在两水平正交表中,任何一列 都有数码“1”与“2”,且任何一列中它们出现的次数是相等的;如在三水平正交表中,任何一列都有“1”、“2”、“3”,且在任一列的出现数均相等。 (2) 任意两列中数字的排列方式齐全而且均衡。例如:在两水平正交表中,任何两 列(同一横行内)有序对子共有4种:(1,1)、(1,2)、(2,1)、(2,2)。每种对数出 现次数相等。在三水平情况下,任何两列(同一横行内)有序对共有9种,1.1、1.2、1.3、2.1、2.2、2.3、3.1、3.2、3.3,且每对出现数也均相等。 以上两点充分的体现了正交表的两大优越性,即“均匀分散性,整齐可比”。通俗的说,每个因素的每个水平与另一个因素各水平各碰一次,这就是正交性。 2.3如何查找正交表 1、Technical Support (https://www.wendangku.net/doc/7513930025.html,) https://www.wendangku.net/doc/7513930025.html,/techsup/technote/ts723_Designs.txt 2、查Dr. GenichiTaguchi设计的正交表, https://www.wendangku.net/doc/7513930025.html,/depts/maths/tables/orthogonal.htm上面查询 3、数理统计、试验设计等方面的书及附录中 关注点:因素数和对应的水平数组成的矩阵。 三、用正交表设计测试用例 3.1设计测试用例的步骤 1、有哪些因素(变量) 2、每个因素有哪几个水平(变量的取值) 3、选择一个合适的正交表 4、把变量的值映射到表中

测试用例八大设计方法和实例

测试用例设计方法 1等价类划分 1.1 理论知识 等价类划分是一种典型的黑盒测试方法。这一方法完全不考虑程序的内部结构,只依据程序的规格说明来设计测试用例。 等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭示程序中的错误都是等效的。 等价类合理地假设:某个等价类的代表值,与该等价类的其他值,对于测试来说是等价的。 因此,可以把全部的输入数据划分成若干的等价类,在每一个等价类中取一个数据来进行测试。这样就能以较少的具有代表性的数据进行测试,而取得较好的测试效果。 等价类划分是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例.该方法是一种重要的,常用的黑盒测试用例设计方法. 1) 分类: 划分等价类: 等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据.取得较好的测试结果.等价类划分可有两种不同的情况:有效等价类和无效等价类. 有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合.利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能. 无效等价类:与有效等价类的定义恰巧相反. 设计测试用例时,要同时考虑这两种等价类.因为,软件不仅要能接收合理的数据,也要能经受意外的考验.这样的测试才能确保软件具有更高的可靠性. 2)划分等价类的方法: 下面给出六条确定等价类的原则: ①在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类. ②在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效

性能测试用例模版

测试用例模板 测试用例(Test case) 用例名称 用例编号 重要程度 用例设计人 代码负责人 测试人 测试时间 English version Title Case ID Level Designer Developer Tester Time 测试场景描述(Case scenario) 场景描述 子场景(可选) 子场景1 例如,返回10条记录 子场景2 例如,返回100条记录 测试流程(Testing process) 描述被测试应用场景的商业流程,流程必须在实际测试中发挥良好的导航作用,使不熟悉该系统的使用者能够对商业流程有清晰的了解。 (被测的商业流程应该事先通过检测,以确保功能的顺利运行。应用程序代码在测试阶段应该被冻结) 1. 2. 3. 测试条件和要求(Requirements) 环境要求 硬件要求: WEB服务器- 配置1.2 (详细配置信息见测试计划文档,或附录) 软件要求: 补丁要求: 网络要求:

性能基线和衡量指标(Testing baseline & metrics) 前提(测试结果有效的先决条件) 1. 例如:无内存泄漏;HTTP错误个数为0 2. 数据库数据要求 例如:流水表已有20万条记录 3. 并发连接数要求 4. 测试周期或测试次数 性能基线 1. 例如:每秒钟完成XXX笔交易 2. 3. 监视参数(详情见附录) 1. 例如:Performance Monitor: Private Byte 2. 3. 性能计算方式 1. 例如:数据库交易表增加纪录数/ 总时间(秒) 2. 3. 测试数据和脚本(Testing data, Scripts) 测试数据准备 包括登陆账号组,输入数据;可以事先保存在某个文本文件中 测试数据库 数据库、表、存储过程、视图、用户帐号、相关数据 测试脚本 根据测试工具编写相应脚本或编写手工测试脚本 for Example 1LBrowser 1. Navigate to the home page of the Online Shopping site. 2. Click “Help.” 3. Click “FAQ.” 4. Click “Shopping” on FAQ. 5. Click “Shopping/Our Products” on the main menu. 6. Click “Product Search.”

测试用例模板(完整版)

用例编号XXX-XXX-XXXX 项目名称XXXX 模块名称XXXX模块 项目承担部门XXXX部 用例作者 完成日期2014-12-24 本文档使用部门XXXX部 评审负责人 审核日期 批准日期 注:本文档由测试组提交,审核由测试组负责人签字,由项目负责人批准。历史版本:

一、功能测试用例 此功能测试用例对测试对象的功能测试应侧重于所有可直接追踪到用例或业务功能和业务规则的测试需求。这种测试的目标是核实数据的接受、处理和检索是否正确,以及业务规则的实施是否恰当。主要测试技术方法为用户通过GUI(图形用户界面)与应用程序交互,对交互的输出或接受进行分析,以此来核实需求功能与实现功能是否一致。

二、性能测试 性能测试是一种对响应时间、事务处理速率和其他与时间相关的需求进行测试和评估。性能测试的目标是核实性能需求是否都已满足。可以分为以下几种进方式来组织进行测试。1.1.预期性能测试用例 通常系统在设计前会提出一些性能指标,这些指标是性能测试要完成的首要工作,针对每个指标都要统写多个测试用例来验证是否达到要求,根据测试结果来改进系统的性能。预期性

能指标通常以单用户为主。 1.2.用户并发测试用例 用户并发测试是性能测试最主要的部分,主要是通过增加用户数量来加重系统负担,以检验测试对象能接收的最大用户数来确定功能是否达到要求。

1.3.大数据量测试用例 大数据量测试是测试对象处理大量的数据,以确定是否达到了将使软件发生故障的极限。大数据量测试还将确定测试对象在给定时间内能够持续处理的最大负载或工作量。 1.4.疲劳强度测试用例 强度测试也是性能测试是的一种,实施和执行此类测试的目的是找出因资源不足或资源争用而导致的错误。如果内存或磁盘空间不足,测试对象就可能会表现出一些在正常条件下并不明显的缺陷。而其他缺陷则可能由于争用共享资源(如数据库锁或网络带宽)而造成的。强

相关文档
相关文档 最新文档