- 1、本文档共78页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件测试知识培训主讲人: Test training 培训内容 第一讲 测试总体介绍 第二讲 测试计划 第三讲 测试设计和开发 第四讲 测试用例分析方法 第五讲 测试执行和评估 第六讲 测试流程及管理 Test Case Analyze Method 第四讲 测试用例分析方法 测试用例分析方法 前 言 本次培训的内容是软件测试用例的分析方法。 本次培训的目的是通过这次讲解,希望大家能够对软件测试用例的分析方法有一个比较系统化和全面的了解。 测试用例分析方法 简介 测试方法 黑盒测试 白盒测试 用例分析方法 黑盒方法 白盒方法 Q/A 测试用例分析方法 简 介 软件测试的方法多种多样,测试人员在测试的过程中不断摸索和总结,逐渐形成了一些典型的通用方法,这些方法可以针对具体的项目和需要来剪裁或组合运用。大体上将这些方法归为两类:黑盒方法和白盒方法。 测试用例分析方法 理想:把所有能做的测试无一遗漏地全部做 完,把软件系统中所有隐藏的错误全 部找出来。 现实:人力,时间,成本的限制。 折中:设计有限的测试用例代替穷举测试。 测试用例分析方法 测试方法 黑盒测试: 把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。 测试用例分析方法 黑盒测试的关注点: 是否有不正确或遗漏了的功能? 在接口上,输入能否正确地接受? 能否输出正确的结果? 是否有数据结构错误或外部信息(例如数据文件)访问错误? 性能上是否能够满足要求? 安全性上是否能够满足要求? 是否有初始化或终止性错误? 测试用例分析方法 例示: 假设一个程序P有输入量X和Y及输出量Z。在字长为32位的计算机上运行。若X、Y取整数,按黑盒方法进行穷举测试: 可能采用的 测试数据组: 232×232=264 如果测试一组数据需要1毫秒,一年工作365× 24小时,完成所有测试需几亿年。 测试用例分析方法 白盒测试: 把测试对象看做一个透明的盒子,它允许测试人员利用程序内部的逻辑结构等有关信息,设计测试用例,对程序所有逻辑路径进行测试。 通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。 测试用例分析方法 白盒测试的关注点: 检查程序模块的所有独立的执行路径是否有效; 检查程序中所有的逻辑判定,取“真”与取“假”的两种情况是否都执行过; 检查循环的边界和循环内运行逻辑是否正确; 检查程序内部数据结构是否有效等。 测试用例分析方法 对一个具有多重选择和循环嵌套的程序,不同的路径数目可能是天文数字。给出一个小程序的流程图,它包括了一个执行20次的循环。 包含的不同执行路径数达520条,对每一条路径进行测试需要1毫秒,假定一年工作365 × 24小时,要想把所有路径测试完,需几千年。 测试用例分析方法 总结: 通过黑盒测试发现程序中的错误,必须在所有可能的输入条件和输出条件中确定测试数据,来检查程序是否都能产生正确的输出; 通过白盒测试发现程序中的错误,必须运行程序执行所有的逻辑分支,所有的循环,所有的路径,来检查程序是否都能运行正常。 但这是不可能的。 所以,我们需要用例分析方法。 测试用例分析方法 语句覆盖 判定覆盖 条件覆盖 判定-条件覆盖 条件组合覆盖 路径覆盖 语句覆盖 语句覆盖就是设计若干个测试用例,运行被测程序,使得每一可执行语句至少执行一次。 在示例中,正好所有的可执行语句都在路径L1上,所以选择路径 L1设计测试用例,就可以覆盖所有的可执行语句。 测试用例的设计格式如下【输入的(A, B, X),输出的(A, B, X)】 为示例设计满足语句覆盖的测试用例是:【(2, 0, 4),(2, 0, 3)】 覆盖 ace【L1】 语句覆盖的优缺点: 优点: 最简单的结构测试覆盖; 易于实现大量的代码覆盖; 缺点: 语句覆盖所采用的标准是结构测试里最弱的; 只测试了条件语句的一方面; 判定覆盖 判定覆盖就是设计若干个测试用例,运行被测程序,使得程序中每个判断的取真分支和取假分支至少执行一次。 判定覆盖又称为分支覆盖。 对于示例,如果选择路径L1和L2,就可以得到满足要求的测试用例: 【(2, 0, 4),(2, 0, 3)】覆盖 ace【L1】【(1, 1, 1),(1, 1, 1)】覆盖 abd【L2】 如果选择路径L3和L4,还可得另一组可用的测试用例:【(2, 1, 1),(2, 1, 2)】覆盖 abe【L3】【(3, 0, 3),(3, 0, 1)】覆盖 acd【L4】 分支覆盖的优缺点: 优点:
文档评论(0)