软件测试用例设计案例_第1页
软件测试用例设计案例_第2页
软件测试用例设计案例_第3页
软件测试用例设计案例_第4页
软件测试用例设计案例_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件测试用例设计案例等价类型划分法等价类划分是一种典型的黑盒测试方法用这一方法设计测 试用例完全不考虑程序的内部结构只根据对程序的需求和说明即需求规格说明 书。由于穷举测试工作量太大以至于无法实际完成促使我们在大量的可能数据 中选取其中的一部分作为测试用例。例如在不了解等价分配技术的前提下我们做计算器程序的加法测试时测试 了 11121314之后还有必须测试15和16吗能否放心的认为它们时正确的我们感 觉15和16与前面的1112都是类似的简单加法。等价类划分法是把程序的输入域划分成若干部分然后从每个部分中选取少 数代表性数据当作测试用例。每一类的代表性数据在测试中的作用等价于这一类 中的其他

2、值也就是说如果某一类中的一个例子发现了错误这一等价类中的其他 例子也能发现同样的错误反之如果某一类中的一个例子没有发现错误则这一类 中的其他例子也不会查出错误。使用这一方法设计测试用例首先必须在分析需求 规格说明的基础上划分等价类列出等价类表。1.划分等价类和列出等价类表。等价类是指某个输入域的子集合。在该子集合中各个输入数据对于揭露程序 中的错误都是等效的。并合理地假定测试某等价类的代表值就等于对这一类其他 值的测试。因此可以把全部输入数据合理划分为若干等价类在每一个等价类中取一个 数据作为测试的输入条件就可以用少量代表性的测试数据取得较好的测试结果。 等价类划分有两种不同的情况有效等价类和

3、无效等价类。有效等价类是指对于程序的规格说明来说是合理的、有意义的输入数据构成 的集合。利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性 能。无效等价类与有效等价类的定义恰巧相反。设计测试用例时要同时考虑这两种等价类。 因为软件不仅要能接收合理的数 据也要能经受意外的考验。这样的测试才能确保软件具有更高的可靠性。下面给出6条确定等价类的原则在输入条件规定了取值范围或值的个数 的情况下则可以确立一个有效等价类和两个无效等价类。 在输入条件规定了输入值的集合或者规定了 “必须如何”的条件的情况下 可以确立一个有效等价类和一个无效等价类。 在输入条件是一个布尔量的情况下可确定一个有效等价

4、类和一个无效等 价类。 在规定了输入数据的一组值假定 n个并且程序要对每一个输入值分别处 理的情况下可确立n个有效等价类和一个无效等价类。软件工程规范、实践与案例分析2在规定了输入数据必须遵守的规则的情 况下可确立一个有效等价类符合规则和若干个无效等价类从不同角度违反规则。在确知已划分的等价类中各元素在程序处理中的方式不同的情况下则应 再将该等价类进一步地划分为更小的等价类。在确立了等价类之后建立等价类表列出所有划分出的等价类如表5-1。表5-1等价类表示例输入条件有效等价类无效等价类 .2.确定测试用例根据已列出的等价类表按以下步骤确定测试用例为每个等价类规定 一个唯一的编号设计一个新的测试

5、用例使其尽可能多地覆盖尚未覆盖的有效 等价类。重复这一步最后使得所有有效等价类均被测试用例所覆盖设计一个新 的测试用例使其只覆盖一个无效等价类。重复这一步使所有无效等价类均被覆 盖。在寻找等价区间时想办法把软件的相似输入、输出、操作分成组。这些组就是等价区间。请看下面这个例子。个人所得税计算。个人取得的工资、薪金所得是指个人因任职或者受雇而取得的工资、薪金、 奖金、年终加薪、劳动分红、津贴、补贴以及与任职或受雇有关的其他所得。工资、薪金所得项目税率表级数全月应纳税所得额税率速算扣除法元1不超过500元的502超过500元至2000元的部分1025第7章软件测试33超过2000 元至5000元的

6、部分151254超过5000元至20000元的部分203755超过20000 元至40000元的部分2513756超过40000元至60000元的部分3033757超过60000 元至80000元的部分3563758超过80000元至100000元的部分40103759超过 100000元的部分4515375工资、薪金所得按以下步骤计算缴纳个人所得税每月 取得工资收入后先减去个人承担的基本养老保险金、医疗保险金、失业保险金以 及按省级政府规定标准缴纳的住房公积金再减去费用扣除额1600元/月来源于境外的所得以及外籍人员、华侨和香港、澳门、台湾同胞在中国境内的所得每月 还可附加减除费用3200元

7、为应纳税所得额按5至45的九级超额累进税率计算缴 纳个人所得税。计算公式是应纳个人所得税税额应纳税所得额X适用税率-速算扣除数例王某当月取得工资收入9000元当月个人承担住房公积金、基本养老保险金、医疗 保险金、失业保险金共计1000元费用扣除额为1600元则王某当月应纳税所得额 9000-1000-16006400 元。应纳个人所得税税额 6400X 20-375905 元。以A代表应纳税所得额。列出等价类表如表5-2所示。表5-2等价类表输入条件有效等价类无效等价类是否是合法的薪酬数据Agt01Alt02软件工程规范、实践与案例分析 4不超过500元0ltAlt5003500 元 至 20

8、00 元 500ltAlt200042000 元至 5000 元 2000ltAlt500055000 元至 20000 元 5000ltAlt20000620000 元至 40000 元 20000ltAlt40000740000 元至 60000 元 40000ltAlt60000860000 元至 80000 元 60000ltAlt80000980000 元至 100000 元 80000ltAlt10000010100000元以上100000ltA11设计测试用例输入顺序是【ABC 如表5-3所示表5-3测试用例第7章软件测试5序号A覆盖等价类输出 130013152-102 提示“

9、应纳税额不能是负数”36001、435430001、53255100001616256300001 、761257500001 、8116258700001 、9181259900001 、1025625101200001 1138625请记住等价分配的目标是把可能的测试用例组合缩 减到仍然足以满足软件测试需求为止。因为选择了不完全测试就要冒一定的风险 所以必须仔细选择分类。关于等价分配最后要讲的一点是这样做有可能不客观。科学有时也是一门艺 术。测试同一个复杂程序的两个软件测试员可能会制定出两组不同的等价区间。 只有审查等价区间的人都认为它们足以覆盖测试对象就可以了。2边界分析法依据经验输入或

10、输出范围的边界上往往是错误的多发地带因 此针对各种边界情况设计测试用例是必要的。例如在计算个人所得税时税率是分段计算的每段的边界是需要重点关注的。假定开发者在编写程序计算应纳税额在 2000到5000区间的所得税代码如 下ifAgt500ampAlt2000taxA0.1 - 25ifAgt2000ampAlt5000taxA0.15 - 125 软 件工程规范、实践与案例分析 6由于开发人员的疏忽导致边界值2000对应的所 得税没有计算。如果软件中有诸如数值、速度、字符、地址、位置、尺寸、数量等数据类型 那么进行边界分析时可以考虑这些类型的下述特征:第一个/最后一个最小值/最大值开始/完成超

11、过/在内空/满最短/最长最慢/ 最快最早/最迟最大/最小最高/最低相邻/最远除了边界值还需要测试边界值附 近的取值。例如:第一个减1/最后一个加1开始减1/完成加1空了再减/满了再加慢上加慢/ 快上加快最大数加1/最小数减1最小值减1/最大值加1刚好超过/刚好在内短了 再短/长了再长早了更早/晚了更晚最高加1/最低减1另一些该注意的输入:默认 空白空值零值和无非法错误不正确和垃圾数据.3场景法第7章软件测试7场景 法的基本原理是依据用例中定义的事件流定义测试用例。以下是RUP中对场景测试的说明。用于功能性测试的测试用例来源于测试目标的用例。应该为每个用例场景编制测试用例。用例场景要通过描述流经

12、用例的路径来确定这个流经过程要从用例 开始到结束遍历其中所有基本流和备选流。例如下图中经过用例的每条不同路径都反映了基本流和备选流都用箭头来 表示。基本流用直黑线来表示是经过用例的最简单的路径。每个备选流自基本流开始之后备选流会在某个特定条件下执行。 备选流可能会重新加入基本流中备选流1和3还可能起源于另一个备选流备选流 2或者终止用例而不再重新加入某个 流备选流2和4。用例的事件流示例遵循上图中每个经过用例的可能路径可以确定不同的用 例场景。从基本流开始再将基本流和备选流结合起来可以确定以下用例场景场景 1基本流软件工程规范、实践与案例分析8场景2基本流备选流1场景3基本流 备选流1备选流2

13、场景4基本流备选流3场景5基本流备选流3备选流1场景6 基本流备选流3备选流1备选流2场景7基本流备选流4场景8基本流备选流3 备选流4注为方便起见场景5、6和8只描述了备选流3指示的循环执行一次的 情况。生成每个场景的测试用例是通过确定某个特定条件来完成的这个特定条件 将导致特定用例场景的执行。例如假定上图描述的用例对备选流3规定如下“如果在上述步骤 2? 6? 7输入提款金额? 6? 8中输入的美元量超出当前帐户余额则出现此事件流。系统 将显示一则警告消息之后重新加入基本流再次执行上述步骤2? 6? 7输入提款金额? 6? 8此时银行客户可以输入新的提款金额。”据此可以开始确定需要用来 执

14、行备选流3的测试用例测试用例ID场景条件预期结果TCx场景4步骤2-提款 金额gt帐户余额在步骤2处重新加入基本流TCy场景4步骤2-提款金额lt帐 户余额不执行备选流3执行基本流TCz场景4步骤2-提款金额帐户余额不执行 备选流3执行基本流第7章软件测试9注由于没有提供其他信息以上显示的测试 用例都非常简单。测试用例很少如此简单。下面是一个由用例生成测试用例的更符合实际情况的示例。示例一台ATM机器的主角和用例。下表包含了上图中提款用例的基本流和某些备用流基本流本用例的开端是ATM处于准备就绪状态。准备提款-客户将银行卡插入ATM机的读卡机。验证银行卡-ATM机从银行卡的磁条中读取帐户代码并

15、检查它是否属于可以 接收的银行卡。输入PIN-ATM要求客户输入PIN码4位验证帐户代码和 PIN-验证帐户代码 和PIN以确定该帐户是否有效以及所输入的 PIN对该帐户来说是否正确。对于此 事件流帐户是有效的而且 PIN对此帐户来说正确无误。ATM选项-ATM显示在本机上可用的各种选项。在此事件流中银行客户通常选 择“提款”。输入金额-要从ATM中提取的金额。对于此事件流客户需选择预设的金额 10 美元、20美元、50美元或100美元。软件工程规范、实践与案例分析 10授权-ATM通过将卡ID、PIN、金额以及 帐户信息作为一笔交易发送给银行系统来启动验证过程。对于此事件流银行系统 处于联机

16、状态而且对授权请求给予答复批准完成提款过程并且据此更新帐户余 额。出钞-提供现金。返回银行卡-银行卡被返还。收据-打印收据并提供给客户。ATM还相应地更新内部记录。用例结束时ATM又回到准备就绪状态。备选流1-银行卡无效在基本流步骤2中-验证银行卡如果卡是无效的则卡被 退回同时会通知相关消息。备选流2-ATM内没有现金在基本流步骤 5中-ATM选项如果ATM内没有现金 则“提款”选项将无法使用。备选流3-ATM内现金不足在基本流步骤6中-输入金额如果ATM机内金额少 于请求提取的金额则将显示一则适当的消息并且在步骤 6-输入金额处重新加入 基本流。备选流4-PIN有误在基本流步骤4中-验证帐户

17、和PIN客户有三次机会输入 PIN。如果PIN输入有误ATM各显示适当的消息如果还存在输入机会则此事件流在 步骤3-输入PIN处重新加入基本流。如果最后一次尝试输入的 PIN码仍然错误则该卡将被ATM机保留同时ATM 返回到准备就绪状态本用例终止。备选流5-帐户不存在在基本流步骤4中-验证帐户和PIN如果银行系统返回 的代码表明找不到该帐户或禁止从该帐户中提款则 ATM显示适当的消息并且在 步骤9-返回银行卡处重新加入基本流。备选流6-在基本流步骤7-授权中银行系统返回代码表明帐户余额少于在基 本流步骤第7章软件测试11帐面金额不足6-输入金额内输入的金额则 ATM显示 适当的消息并且在步骤6

18、-输入金额处重新加入基本流。备选流7-达到每日最大的提款金额在基本流步骤 7-授权中银行系统返回的 代码表明包括本提款请求在内客户已经或将超过在 24小时内允许提取的最多金 额则ATM显示适当的消息并在步骤6-输入金额上重新加入基本流。备选流X-记录错误如果在基本流步骤10-收据中记录无法更新则 ATM进入 “安全模式”在此模式下所有功能都将暂停使用。同时向银行系统发送一条适当 的警报信息表明ATM已经暂停工作。备选流y-退出客户可随时决定终止交易退出。交易终止银行卡随之退出。备选流z- “翘起” ATM包含大量的传感器用以监控各种功能如电源检测器、 不同的门和出入口处的测压器以及动作检测器等

19、。在任一时刻如果某个传感器被激活则警报信号将发送给警方而且 ATM进入“安全模式”在此模式下所有功能都 暂停使用直到采取适当的重启/重新初始化的措施。在第一次迭代中根据迭代计划我们需要核实提款用例已经正确地实施。此时尚未实施整个用例只实施了下面的事件流基本流 -提取预设金额10美元、20美 元、50美元、100美元备选流2-ATM内没有现金备选流3-ATM内现金不足备选流 4-PIN有误备选流5-帐户不存在/帐户类型有误备选流6-帐面金额不足可以从这 个用例生成下列场景场景1-成功的提款基本流场景2-ATM内没有现金基本流备 选流2场景3-ATM内现金不足基本流备选流 3软件工程规范、实践与案

20、例分析 12场景4-PIN有误还有输入机会基本流备选流 4场景5-PIN有误不再有输入机 会基本流备选流4场景6-帐户不存在/帐户类型有误基本流备选流5场景7-帐户 余额不足基本流备选流6注为方便起见备选流3和6场景3和7内的循环以及循 环组合未纳入上表。对于这7个场景中的每一个场景都需要确定测试用例。 可以采用矩阵或决策 表来确定和管理测试用例。下面显示了一种通用格式其中各行代表各个测试用例 而各列则代表测试用例的信息。本示例中对于每个测试用例存在一个测试用例 ID、条件或说明、测试用例中涉及的所有数据元素作为输入或已经存在于数据库 中以及预期结果。通过从确定执行用例场景所需的数据元素入手构

21、建矩阵。然后对于每个场景 至少要确定包含执行场景所需的适当条件的测试用例。例如在下面的矩阵中V有效用于表明这个条件必须是 VALID有效的才可执行基本流而I无效用于表明这 种条件下将激活所需备选流。下表中使用的“n/a ”不适用表明这个条件不适用于测试用例。TC测试用例ID号场景/条件PIN帐号输入的金额或选择的金额帐面金额 ATM 内的金额预期结果CW1场景1-成功的提款VVVVV成功的提款。CW2场景2-ATM内没有现VVVVI提款选项不可用用例结束第 7章软件测试 13金CW3场景3-ATM内现金不足VVVVI警告消息返回基本流步骤6-输入金额CW4. 场景4-PIN有误还有不止一次输入

22、机会IVn/aVV警告消息返回基本流步骤4输入 PINCW5场景4-PIN有误还有一次输入机会IVn/aVV警告消息返回基本流步骤 4 输入PINCW6场景4-PIN有误不再有输入机会IVn/aVV警告消息卡予保留用例结 束在上面的矩阵中六个测试用例执行了四个场景。对于基本流上述测试用例 CW1称为正面测试用例。它一直沿着用例的基本流路径执行未发生任何偏差。基本流 的全面测试必须包括负面测试用例以确保只有在符合条件的情况下才执行基本 流。这些负面测试用例由CW2S 6表示阴影单元格表明这种条件下需要执行备选 流。虽然CW至6对于基本流而言都是负面测试用例但它们相对于备选流2至4而言是正面测试用

23、例。而且对于这些备选流中的每一个而言至少存在一个负面测 试用例CW1基本流。每个场景只具有一个正面测试用例和负面测试用例是不充分的场景4正是这样的一个示例。要全面地测试场景4-PIN有误至少需要三个正面测试用例以激 活场景4输入了错误的PIN但仍存在输入机会此备选流重新加入基本流中的步骤 3-输入PIN。输入了错误的PIN而且不再有输入机会则此备选流将保留银行卡并终止用最后一次输入时输入了 “正确”的PIN。备选流在步骤5-输入金额处重新加 入基本流。注在上面的矩阵中无需为条件数据输入任何实际的值。以这种方式创建测试用例矩阵的一个优点在于容易看到测试的是什么条件。由于只需要查看V和I或此处采用

24、的阴影单元格这种方式还易于判断是否已经确定了充足的测试用例。 从上表中可发现软件工程规范、实践与案例分析14存在几个条件不具备阴影单元格这表明测试用例还不完全如场景6-不存在的帐户/帐户类型有误和场景 7-帐户余额不足就缺少测试用例。一旦确定了所有的测试用例则应对这些用例进行复审和验证以确保其准确 且适度并取消多余或等效的测试用例。有关详细信息请参见检查点测试用例。测试用例一经认可就可以确定实际数据值在测试用例实施矩阵中并且设定 测试数据关于测试数据的详细信息请参见指南测试数据。TC测试用例ID号场景/条件PIN帐号输入的金额或选择的金额帐面金额 ATM 内的金额预期结果 CW1场景1-成功的

25、提款4987809-49850.00500.002000成功的 提款。帐户余额被更新为450.00CW2.场景2-ATM内没有现金 4987809-498100.00500.000.00提款选项不可用用例结束CW3场景3-ATM内现金 不足4987809-498100.00500.0070.00警告消息返回基本流步骤 6-输入金额CW4. 场景4-PIN有误还有不止一次输入机会 4978809-498n/a500.002000警告消息返 回基本流步骤4输入PINC场景4-PIN4809-n/a500.002000警告消息第7章软件 测试15W5有误还有一次输入机会978498返回基本流步骤4输

26、入PINCW6场景 4-PIN有误不再有输入机会4978809-498n/a500.002000警告消息卡予保留用例 结束以上测试用例只是在本次迭代中需要用来验证提款用例的一部分测试用例。需要的其他测试用例包括场景6-帐户不存在/帐户类型有误未找到帐户或帐户不可用场景6-帐户不存在/帐户类型有误禁止从该帐户中提款场景7-帐户余额不足请求的金额超出帐面金额 4软件测试设计实例测试“建立新岗位”功能。建立新岗位的需求需求编号 FR-StructureMG-1需求描述超级用户登录系统 后可以新建岗位。新建岗位时可以设定新建岗位的岗位名称、所在部门、岗位描述信息。新建岗位的信息不能缺失如果某一项没有填写要给出提示。用例规约用例名称建立新岗位用例 IDESM-ZZJG-1角色SuperUser用例说明 SuperUser创建新岗位。前置条件SuperUser已经登录ESM系统。基本事件流1.SuperUser请求新建岗位2.ESM系统弹出岗位信息查询页面如 图ESM-ZZJG-1所示软件工程规范、实践与案例分析163.SuperUSer选择“新建” 4.系统弹出.北国风光, 千里冰封, 万里雪飘。两汉:诸葛亮望长城内外,惟余

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论