【文档说明】软件测试用例设计课件.ppt,共(66)页,1007.001 KB,由小橙橙上传
转载请保留链接:https://www.ichengzhen.cn/view-45294.html
以下为本文档部分文字说明:
同步科技2024/12/2author:henryDate:16Oct,2007测试用例设计同步科技2课程介绍目标➢掌握测试用例设计的实践、方法和要点听众➢测试管理人员、测试工程师➢应用开发人员、QA人员必备条件➢熟悉测试过程➢有过实际的测试
经验同步科技3课程内容如何设计好测试用例设计测试用例的思路黑盒测试用例的设计白盒测试用例的设计自动化测试用例的设计同步科技4测试用例设计下面我们学习--如何设计好测试用例➢测试用例与软件质量➢怎样衡量一个好的测试用例
➢测试用例的类型➢剖析测试用例➢提高设计测试用例的效率➢常出现的错误同步科技2024/12/25测试用例与软件质量测试用例是为了发现软件缺陷,或至少可能发现缺陷而设计;通过好的用例来提高质量,从而降低维护成本;不好的用例将给质量带来一定的风险;好的用例是度量质量的一个标准。经常用“测试
用例数/千行代码“来评价项目。同步科技2024/12/26怎样衡量一个好的测试用例有效性➢是否能发现软件缺陷,至少可能发现软件缺陷;开销➢测试事例的执行、分析和调试是否经济;可仿效性➢测试用例可以测试多项内容,因而减少了测试事例的数量;可维护性➢每次软件修改后对测试事例的维
护成本;可执行性➢是否依赖于测试用例设计者;同步科技2024/12/27测试用例的类型按表现形式分:➢向导型-一步一步的指示说明表➢脚本型-执行测试或回放记录的脚本按设计目标分:➢单元测试用例-发现编码的缺陷➢系统测试用例-发现功能说明的缺陷➢集成测试用
例-发现设计的缺陷➢验收测试用例-发现需求的缺陷同步科技2024/12/28剖析测试用例对任何一个测试用例而言都顺序执行这5个测试开发活动标识设计建立分析执行标识测试条件(确定测试什么)和测试的优先级设计测试用例(确定怎样测试)建立测试
(确定测试脚本、数据等)执行测试用例将测试用例的输出结果与期望结果进行比较同步科技2024/12/29提高设计测试用例的效率使用模板➢防止空白页➢建立标准➢帮助测试者发现信息➢打印好的测试例子使用测试管
理软件➢容易增加、移动、删除用例与步骤➢可以借鉴很多模板➢制作大纲➢可以对步骤、用例进行拷贝➢能自动编号复制技术➢使用“另存为”命令➢使用“替换”命令➢使用存储文本、宏同步科技2024/12/210常出现的错误用例太长不完善,不正确、不连贯遗漏步骤对字段的命名有所
改变或使其根本不存在对系统的操作不清楚不能确定用例是否通过参数化错误同步科技11测试用例设计下面我们学习--设计测试用例的思路➢由简而繁➢参数化➢案例同步科技2024/12/212由简而繁“繁”,这里是指详细的意思;是一个过程是一个逐步细化的过程是一个从简单的测试描述(测
试功能点、测试需求等)逐步细化到能够去依照执行的测试用例的过程由简而繁--同步科技2024/12/213为什么要由简而繁?如果没有测试用例或者仅有简单的测试功能描述,测试过程难以控制,测试结果将毫无可靠性可言;⚫简
单的测试用例可靠性低,重用性差,可能导致不同人员理解不同;⚫详细的测试用例可靠性高,而且便于估计执行所需时间,易于控制。⚫…………同步科技2024/12/214到何种程度?时间要求➢测试时间是否充足?执行
者➢测试执行者对系统的了解程度?建议程度➢将测试用例交给其他人执行时不需要过多的解释。同步科技2024/12/215样例-登录需求:用户名长度为6至10位(含6位和10位)用户名由字符(a-z、A-Z)和数字(0-9)组成用户名不能为空,不能有空格和特
殊字符密码规则同用户名规则同步科技2024/12/216简单理解需求能够正确处理用户登录同步科技2024/12/217一般用例的设计输入正确的用户名和口令可以进入系统输入错误用户名或口令错误无法进入系统同步科技2024/12/218详细用例的设计操作步骤预期结果输入正确的
用户名和口令(均为6位),点击[OK]按钮进入系统输入正确的用户名和口令(均为10位),点击[OK]按钮进入系统输入正确的用户名和口令(均为6至8位之间),……进入系统用户名为空,……提示输入用户名不能进入
系统用户名为空格,……提示无效用户名不能进入系统用户名小于6位,……提示用户名太短不能进入系统……………………………………同步科技2024/12/219什么是参数化是一个将测试数据与测试逻辑(步骤)分开,简化测试用例的过程;方式是将用例中的
一些输入、输出等作为参数,数据则单独列出,在执行时选择相应的数据执行。同步科技2024/12/220为什么要参数化?没有将测试数据和测试逻辑分开的测试用例可能显得非常庞大,不利于测试员理解,导致难以控制和执行;⚫通过将用例参数化,可以简化用例,使测试用例逻辑清晰,数据与
逻辑的关系明了,易于理解;⚫有利于提高测试用例的复用性;同步科技2024/12/221哪些内容需要参数化?测试用例中需要通过使用不同数据来重复执行测试的部分;包括:➢输入(数据或操作等)➢输出(结果数据或预
期结果等)同步科技2024/12/222样例-登录的测试步骤步骤:1、输入<<<用户名>>>2、输入<<<口令>>>3、点击[OK]按钮结果:<<<预期结果>>>同步科技2024/12/223样例-登录的测试数据“用户名”“口令”“预期结果”说明“user10”“pass10”进
入系统正确的用户名和口令(6位)“user789”“pass789”进入系统正确的用户名和口令(7-9位)“user000010”“pass000010”进入系统正确的用户名和口令(10位)“”“pass”提示输入用户名不能进入系统用户名为空“空格”“pass”提示无效用户名不能进入系统
用户名为空格“user”“userpass”提示用户名太短不能进入系统用户名小于6位“user0000011”“userpass”提示用户名太长不能进入系统用户名大于10位………………………………………………同步科技24测试用例设
计下面我们学习--黑盒测试用例的设计➢等价类划分法➢边界值分析法➢错误推测法➢因果图法➢。。。同步科技2024/12/225等价类划分定义:➢是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例;➢基本思想是设想用一组有限
的数据去代表近似无限的数据;同步科技2024/12/226等价类划分有效等价类➢是指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。(正确的)无效等价类➢无效等价类指对程序的规格说明是不合理的或无意义的输入数据所构成的集合。(错误的)设计测试用例时,要同时考虑这两种
等价类。因为软件不仅要能接收合理的数据,也要经受意外的考验,这样的测试才能确保软件具有更高的可靠性。同步科技2024/12/227划分等价类的方法在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。如:输入值是
学生成绩,范围是0~100;同步科技2024/12/228划分等价类的方法在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类;在规定了输入数据的一组值(假定N个),并且程序要对每一个输入值分别处理的情况下,可确立N个有效等
价类和一个无效等价类;。。。同步科技2024/12/229设计测试用例在确立了等价类后,可建立等价类表,列出所有划分出的等价类输入条件,然后从划分出的等价类中按以下三个原则设计测试用例:➢为每一个等价类规定一个唯一的编号;➢设计一个新的测试用例,使其尽可能多地覆盖尚
未被覆盖地有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止;➢设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止;同步科技2024/12/230例子-档案管理系统有一个档案管理系统,要求用户输入以年月表示的日期。➢假设日
期限定在1990年1月~2049年12月➢并规定日期由6位数字字符组成,前4位表示年,后2位表示月。➢现用等价类划分法设计测试用例,来测试程序的“日期检查功能”。同步科技2024/12/231例子-档案管理系统划分等价类并编号,下表为等价类划分的结果:输入条件有较等价类号
码无效等价类号码日期类型与长度6位数字字符1有非数字字符4小于6位数字字符5大于6位数字字符6年份范围在1990-2049之间2小于19907大于20498月份范围在01-12之间3等于009大于1210同步科技2024/12/232例子-档案管理系统设计测试用例,
以便覆盖所有的有效等价类在表中列出了3个有效等价类,编号分别为1、2、3,设计的测试用例如下:测试数据期望结果覆盖的有效等价类200211有效输入1、2、3同步科技2024/12/233例子-档案管理系统为每一个无效等价类设计一个测试用例,设计结果如下:测试数据期望结果覆盖的
无效等价类95June无效输入420036无效输入52001006无效输入6198912无效输入7205001无效输入8200100无效输入9200113无效输入10同步科技2024/12/234边界值分析定义:➢边界值分析法就
是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。同步科技2024/12/235边界值分析方法的考虑长期的测试工作经验告诉我们,大量的错误是发生在输入或
输出范围的边界上,而不是发生在输入输出范围的内部。使用边界值分析方法设计测试用例,应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。同步科技2024/12/236常见的边界值对16-bit的整数而言32767和-32768是边界;屏幕上光标
在最左上、最右下位置;报表的第一行和最后一行;数组元素的第一个和最后一个;循环的第0次、第1次和倒数第2次、最后一次;。。。同步科技2024/12/237边界检验的几种类型边界检验的几种类型:➢数字、字符、位置、重量、大小、速度、方位、尺寸、空间等。项边界值字符起始-1个字符/结束+1个字符数字最
小值-1/最大值+1空间小于空余空间一点/大于满空间一点……同步科技2024/12/238数值的边界值检验项范围/值位(bit)0或1字节(byte)0~255字(word)0~65535(单字)或0~4294967295(双字)千(K)1024兆(M)1048576
吉(G)1073741824同步科技2024/12/239字符的边界值检验字符ASCII码值字符ASCII码值空(null)0A65空格(space)32a97斜杠(/)47Z90048z122冒号(:)58单引号(‘
)96@64@64同步科技2024/12/240例子-档案管理系统(同前)有一个档案管理系统,要求用户输入以年月表示的日期。➢假设日期限定在1990年1月~2049年12月➢并规定日期由6位数字字符组成,前4位表示年,后2位表示月。➢现用等价类划分法设计测
试用例,来测试程序的“日期检查功能”。同步科技2024/12/241例子-档案管理系统边界值分析后的用例:测试数据期望结果说明199001有效输入最小值204912有效输入最大值198912无效输入最小年-1199112有效输入最小
年+1200100无效输入最小月-1200102有效输入最小月+1204812有效输入最大年-1205012无效输入最大年+1200111有效输入最大月-1200113无效输入最大月+12001021无效输入长度多120012无效输入长度少1同步科技2024/12/242错误推测法定义:➢基于经
验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的方法。方法:➢列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例。同步科技2024/12/243例子例如:
➢输入数据和输出数据为0的情况;➢输入表格为空格或输入表格只有一行。如前面的例子可补充的用例有:➢输入空格➢输入中有字符➢输入“999999”或“000000”➢输入“-202-2”➢。。。同步科技2024/1
2/244因果图法定义:➢因果图法就是一种利用图解法分析输入的各种组合情况,生成判定表,从而设计测试用例的方法。优点:➢适合于检查程序输入条件的各种情况的组合。➢可以为逻辑条件和相应动作之间的关系提供简洁的表示方法。同步科技45测试用例设计下面我们学习--白盒测试用例的设计➢为什
么要进行白盒测试➢白盒测试用例设计方法◼逻辑覆盖法◼基本路径覆盖法◼。。。同步科技2024/12/246为什么要进行白盒测试假如有一个程序流程如图所示:同步科技2024/12/247为什么要进行白盒测试如果测试组不知道代码中有一个潜在的被0除的错误。测试组按照如下由蓝色和绿色标记的路径进行测试;
显然测试工作似乎非常完善,测试用例覆盖了所有执行语句,没有被0除的错误发生。同步科技2024/12/248为什么要进行白盒测试但是,当客户在接到该产品并使用的过程中,执行了如下红色标记所示的路径时,错误发生了。同步科技2024/12/249为什么要进行白盒测试从本例可以看到,如果不对
程序内部的逻辑结构做分析,则设计的测试用例可能无法发现内部潜在的错误。同步科技2024/12/250白盒测试用例设计方法逻辑覆盖法基本路径覆盖法其它方法➢等价类划分➢边界值分析。。。同步科技2024/12/251逻辑覆盖法逻辑覆盖是以程序内部的逻辑结构为基础的测试用例设计技术,这一方法
要求测试人员对程序的逻辑结构有清楚的了解。逻辑覆盖可分为:➢语句覆盖➢判定覆盖➢条件覆盖➢判定-条件覆盖➢条件组合覆盖同步科技2024/12/252逻辑覆盖各种方法定义语句覆盖➢就是设计若干个测试用例,运行所测程序,使得每一可执行语句至少执
行一次。判定覆盖➢就是设计若干个测试用例,运行所测程序,使得程序中每个判断的取真分支和取假分支至少经历一次。条件覆盖➢就是设计若干个测试用例,运行所测程序,使得程序中每个判断的每个条件的可能取值至少执行一次。同步科技2024/12/253逻辑覆盖各种方法定义判定--条件覆盖➢就
是设计足够的测试用例,使得判断中每个条件的所有可能取值至少执行一次,同时每个判断的所有可能判断结果也至少执行一次。条件组合覆盖➢就是设计足够的测试用例,运行所测程序,使得每个判断的所有可能的条件取值组合至少执行一次。同步科技2024/12/254基本路径法定义:➢基本路径测
试法是在程序控制流图的基础上,通过分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例的方法。➢基本路径法也叫独立路径法。同步科技2024/12/255流图符号同步科技2024/12/256流程图转为流图同步科技2024/12/257基本路径经过分析后,基本路径集合为:
➢路径1:1-11➢路径2:1-2-3-4-5-10-1-11➢路径3:1-2-3-6-8-9-10-11➢路径4:1-2-3-6-7-9-10-1-11为了覆盖所有程序语句,必须设计至少4个测试用例使程序运行于这4条路径。同步科技2024/12/258其它白盒
测试用例设计方法等价类划分边界值分析。。。同步科技59测试用例设计下面我们学习--自动化测试用例的设计➢自动化测试时用例的选择➢数据的参数化同步科技2024/12/260自动化测试时用例的选择并不是所有的用例都会进行自动化测试;选择用例来进行自动化测试时,需要考虑的因素有
:➢项目类型➢操作类型➢测试工具➢易实现性➢可维护性➢流程稳定性➢。。。同步科技2024/12/261测试脚本的参数化在实现自动化测试过程中,需要提交了数据。这些操作都被记录到了脚本中。当多次运行脚本时,就会提交相同的记录
,这样不符合实际的运行情况,而且有可能引起冲突。为了更加真实的模拟实际环境,需要各种各样的输入。脚本的参数化输入是一种不错的方法。同步科技2024/12/262脚本的参数化脚本的数据参数化就是在脚本中将静态值更换为值变量,以使脚本在执行过
程中,自动输入不同数据的方法。(实现方法视工具而不同)数据参数化的好处:➢可以使脚本的长度变短。➢可以使用不同的数值来测试你的脚本。➢可以将设计的用例放置在数据源中一次执行完成。数据参数化包含以下两项任务:➢在脚本中用参数取代常量值。➢设置参数的属性以及数据源。同步科技
63课程回顾如何设计好测试用例设计测试用例的思路黑盒测试用例的设计白盒测试用例的设计自动化测试用例的设计同步科技2024/12/264对测试的误解有时间就多测试一些,来不及就少测试一些。软件测试是测试人员的事,与开发人员无关。设计-实现-测试,软件测试是开发
后期的一个阶段。同步科技2024/12/265测试格言不要改变程序,使测试更容易(除非这个修改是永久的)。每个测试用例的一个必需的部分是对预期输出的描述。避免不可重复的或无用的测试。既要写有效输入条件的测试用例,也要写无效输入条件的测试用例。同步科技2024/12/266Ques
tion?THANKYOU