软件测试用例的设计方法ppt课件.ppt
《软件测试用例的设计方法ppt课件.ppt》由会员分享,可在线阅读,更多相关《软件测试用例的设计方法ppt课件.ppt(68页珍藏版)》请在三一办公上搜索。
1、QQ:782670627 MSN:hello_,1,测试用例的设计方法,毕老西QQ群:82636188MSN:hello_,2,QQ:782670627 MSN:hello_,目录,用例设计考虑因素用例设计基本原则测试用例格式以及写作要点测试用例设计方法用例设计的工程方法分析,3,QQ:782670627 MSN:hello_,一、用例设计考虑因素,从理论上讲,手机软件规模越大,模块间的关系越复杂,组合的情况越多,测试用例数目占的比例也就越大,因而总是很难设计出“足够”的测试用例。 虽然理论上的缺陷空间(测试空间上所有可能发生的缺陷构成的集合就是缺陷空间)可以接近无限大,但实际情况中存在的缺陷
2、只是缺陷空间的一个很小的子集。测试中最重要的是要找到已经存在的缺陷,但在没有进行测试前,手机软件中存在多少缺陷却是不知道的。 从理论上讲,测试是不能穷尽的,就意味着不存在一种方法能将所有的缺陷都找出来,找到缺陷的问题注定是一个概率问题,将那些发生概率较大的缺陷找出来就成了测试的主要任务。 测试用例是为特定的目的而设计的一组测试输入、执行条件和预期的结果。测试用例是执行的最小实体。简单的说,测试用例就是设计一个场景,使测试程序在这种场景下运行且达到程序所设计的执行结果。,4,QQ:782670627 MSN:hello_,一、用例设计考虑因素,设计测试用例首先要考虑以下几个问题:为什么要设计测试
3、用例?谁来写测试用例?这些测试用例的人的测试技术如何?以及对被测产品了解有多深?测试用例写给谁看,多少人将使用测试用例文档?分配给编写测试用例的时间是多长?要安排几个人来写?怎么在测试用例的成本、质量和效率方面达到平衡?目前的手机市场对于新推出的功能和应用程序有着迫切的需要,使得产品周期非常短;然而只有回答了这些问题,才能确定测试用例的具体写法和表现形式。一般而言手机软件测试项目中分配写测试用例的时间并不长,而且提供的文档也不全面,所以写测试用例要符合测试部门的当前现状和项目的测试特点。,5,QQ:782670627 MSN:hello_,一、用例设计考虑因素,对于测试设计工程师来说,设计测试
4、用例需要考虑以下几个方面:测试用例设计必须考虑有效:容易发现并呈现错误;测试用例设计必须覆盖全面又不冗余:数量上不应有重复的、多余的用例,对软件说明书和设计功能点有全面的覆盖,不仅包括功能测试用例,还包括性能测试用例,外场测试、易用性等测试用例;测试用例设计必须明确粒度和测试分类的程度 :粒度越细,测试成本就越高,测试周期就越长;分类越多,测试成本相应增加,测试周期就越长;测试用例设计完成后必须经过评审:以帮助进一步补充用例,提高测试覆盖率,提高用例质量。对于测试执行工程师来说,测试用例的内容应包括以下几个方面:测试用例的测试目标;测试用例的被测功能点描述;测试用例的测试运行环境;,6,QQ:
5、782670627 MSN:hello_,一、用例设计考虑因素,测试用例的执行方法(包括测试步骤,输入测试数据或测试脚本)测试期望的结果;执行测试的实际结果;其他辅助说明。,7,QQ:782670627 MSN:hello_,二、用例设计基本原则,测试用例的代表性:能够代表并覆盖各种合理的和不合理的、合法的和非法、边界的和越界的以及极限的输入 数据、操作和环境设置等。测试用例的可执行特点:在测试前提符合的情况下,依照测试步骤,每一个测试用例都能够顺利地使程序运行,同时呈现相应的期望结果。测试结果的可判定性:即测试执行结果的正确性是可判定的,每一个测试用例都应有相应的期望结果。测试结果的可再现性
6、:即对同样的测试用例,系统的执行结果应当是相同的。,8,QQ:782670627 MSN:hello_,三、测试用例格式以及写作要点,以上是一般的测试用例格式,可以根据公司具体要求删除一些或加入其它项。测试用例编号测试用例编号是由字母和数字组合而成的,用例的编号应该具有唯一性,易识别性。比如可以采用统一的约定,产品编号ST系统测试项名系统测试子项名编号。这样看到编号就可以知道是做的什么测试,测试的对象是什么。也方便维护。,9,QQ:782670627 MSN:hello_,三、测试用例格式以及写作要点,测试项目你现在这个测试用例所测的项目名,可以是测试用例所属的大类,被测需求,被测的模块,或者
7、是被测的单元。例如:计算器加法功能。测试标题测试标题是对测试用例的简单描述。用概括的语言描述该测试用例的测试点。每个测试用例的标题不能够重复,因为每个测试用例的测试点是不一样的。例如:手机在没有SIM卡的情况下,拨打119。重要级别重要级别分为高中底三等:高:保证系统基本功能、重要特性、实际使用频率比较高的用例;中:重要程度介于高和底之间的测试用例;底:实际使用频率不高、对系统业务功能影响不大的模块或功能的测试用例。注:一般情况下,重要级别为高的测试用例,一个测试子项里有且尽有一个,大多数都是重要级别为中的测试用例。因为一般我们会进行一个系统测试预测试,如果重要级别为高的太多,则就失去了预测试
8、的实际意义。,10,QQ:782670627 MSN:hello_,三、测试用例格式以及写作要点,预置条件就是执行当前测试用例的前提条件,如果不满足这些条件,则无法进行测试。输入测试用例执行时,需要输入的外部信息。例如某一个文件,数据记录等。操作步骤 执行当前测试所要经过的操作步骤,需要给出每一步操作的描述,测试人员根据测试用例操作步骤,完成测试用例的执行。预期输出当前测试用例的预期输出结果。用来与实际结果比较,如果相同则该测试用例通过,否则该测试用例失败。,11,QQ:782670627 MSN:hello_,四、测试用例设计方法,1、等价类划分法2、边界值分析法3、判定表法4、因果图法5、
9、状态迁移图法6、流程分析法7、正交试验法8、错误推测法,12,QQ:782670627 MSN:hello_,1、等价类划分法,何为等价类,某个输入域的集合,在这个集合中每个输入条件都是等效的,如果其中一个的输入不能导致问题发生,那么集合中其它输入条件进行测试也不可能发现错误。等价类分为有效等价类和无效等价类,有效等价类就是由那些对程序的规格说明有意义的、合理的输入数据所构成的集合;无效等价类就是那些对程序的规格说明不合理的或无意义的输入数据所构成的集合。,13,QQ:782670627 MSN:hello_,1、等价类划分法,划分等价类的方法:下面给出六条确定等价类的原则。1、在输入条件规定
10、了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。2、在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效等价类和一个无效等价类。3、在输入条件是一个布尔量的情况下,可确定一个有效等价类。4、在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类。5、在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。6、在确定已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类。根据等价类划分
11、原则,将等价类填入下表,等价类表,14,QQ:782670627 MSN:hello_,1、等价类划分法,根据等价类表,然后从划分出的等价类中按以下三个原则设计测试用例:1、为每一个等价类规定一个唯一的编号。2、设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止。3、设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。举例:拿PowerPoint的打印功能界面做例子,用等价类方法,划分等价类。,15,QQ:782670627 MSN:hello_,1、等价类划分法,根据原则划分等价类
12、,填入等价类表。测试用例略。等价类划分是最常用的方法,通常和边界值分析法一起用,在下面的流程分析法里,我会将等价类、边界值和流程分析法一起举例,一起写测试用例。,16,QQ:782670627 MSN:hello_,2、边界值分析法,测试经验丰富的前辈们告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此针对个中边界情况设计测试用例,可以查处更多的错误。首先来了解一下边界点的定义,边界点分为上点、内点和离点。如图:,17,QQ:782670627 MSN:hello_,2、边界值分析法,结合上面的图示。上点,就是边界上的点,不管它是开区间还是闭区间,就是说,
13、如果该点是封闭的,那上点就在域范围内,如果该点是开放的,那上点就在域范围外;内点,就是在域范围内的任意一个点;离点,就是离上点最近的一个点,如果边界是封闭的,那离点就是域范围外离上点最近的点,如果边界是开放的,那离点就是域范围内离上点最近的点。现在大家都知道边界点了,那接下来就讲一下,边界值分析方法的原则:1、如果输入(输出)条件规定了取值范围,则应该以该范围的边界值及边界附近的值作为测试数据;2、如果输入(输出)条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据;3、如果程序规格说明书中提到的输入或输出是一个有序的集合,应该注意选取有序集合的第一个和最
14、后一个元素作为测试数据;4、如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试数据。,18,QQ:782670627 MSN:hello_,2、边界值分析法,举例:闭区间50,100的上点为50和100,离点是49和101,在域范围内的都是内点;半开半闭区间(50,100的上点为50和100,离点是51和101,在域范围内的都是内点;开区间(50,100)的上点为50和100,离点是51和99,在域范围内的都是内点;测试用例略。在下面的流程分析法里,我会将等价类、边界值和流程分析法一起举例,一起写测试用例。,19,QQ:782670627 MSN:hello_,3
15、、判定表法,现在我们先讲判定表法,再讲因果图法,因为判定表法经常和因果图法一起用,先进行因果图分析,再结合判定表,最后完成测试用例。在多个条件决定多个动作,并且每个条件的取值只有两种情况下,我们就可以采用因果图和判定表方法。注:条件和动作之间的逻辑关系是明确的,可以直接使用判定表法;如果条件和动作关系不明确,则要先使用因果图法。判定表通常由四部分组成,如图:,每一个部分之间用双线或粗条线分开,左上部称条件桩,它列出决定一组条件的对象;右上部称条件项,它列出各种可能的条件组合;左下部称动作桩,它列出所有的操作,右下部为动作项,它列出在对应的条件组合下的动作。表的右部一般有很多列。,20,QQ:7
16、82670627 MSN:hello_,3、判定表法,举例:订购单的检查。如果金额超过500元,又未过期,则发出批准单和提货单;如果金额超过500元,但过期了,则不发批准单;如果金额低于500元,则不论是否过期都发出批准单和提货单,在过期的情况下还需要发出通知单。将这段需求进行判定表分析,可以得到如下判定表。,在很多情况下,一个判定表写出来以后,是很复杂的,我们需要对其进行简化。如果表中有两条或多条规则具有相同的动作,并且其条件项之间存在极为相似的关系,我们就可以将其合并。,21,QQ:782670627 MSN:hello_,3、判定表法,比如表中,条件:500、未过期;=500、未过期。这
17、两个条件项导致的结果是一样的,并且条件项之间很相似,我们就可以将它们合并。结果如下:,这里在引入一个概念,规则,以上判定表里,右部的每一列(条件项和对应的动作项)都是一条规则。以上判定表里每一条规则都可以转化为测试用例。,22,QQ:782670627 MSN:hello_,3、判定表法,用例:1、,2、,23,QQ:782670627 MSN:hello_,3、判定表法,3、,24,QQ:782670627 MSN:hello_,4、因果图法,接下来我们讲因果图法。前面说过在多个条件决定多个动作,并且每个条件的取值只有两种情况下,我们就可以采用因果图和判定表方法。因果图法就是从程序规格说明书
18、的描述中找出因(输入条件)和果(输出或程序状态的改变),通过因果图转换为判定表,最后为判定表中的每一列设计一个测试用例。首先我们来了解一下因果图的基本符号,我会在边上加些注解以帮助大家理解。,25,QQ:782670627 MSN:hello_,4、因果图法,接着我们讲一下使用因果图法的步骤:1、根据程序规格说明书描述的语义内容,分析并确定“因”和“果”,将其表示成连接各个原因与各个结果的“因果图”。需要注意的是,由于语法或环境的限制,某些原因和结果的组合情况是不可能出现的。为表明这些特定的情况,需要在因果图上使用若干个约束符号来标明约束条件;2、将得到的因果图转换成判定表;3、为判定表中每一
19、列所表示的情况设计一个测试用例。对于较为复杂的问题,这个方法常常是十分有效的。具体我们来举个例子来讲,可以更好的理解。,26,QQ:782670627 MSN:hello_,4、因果图法,举例:以中国象棋中马的走法为例子,具体说明:1、如果落点在棋盘外,则不移动棋子;2、如果落点与起点不构成日字型,则不移动棋子;3、如果落点处有自己方棋子,则不移动棋子;4、如果在落点方向的邻近交叉点有棋子(绊马腿),则不移动棋子;5、如果不属于1-4条,且落点处无棋子,则移动棋子;6、如果不属于1-4条,且落点处为对方棋子 (非老将) ,则移动棋子并除去对方棋子;7如果不属于1-4条,且落点处为对方老将,则移
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 测试 设计 方法 ppt 课件
链接地址:https://www.31ppt.com/p-1421348.html