- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 2 章
探索式测试设计概论
本章首先介绍探索式测试的思维模型,然后具体讲解测试先知、测试过程和
测试覆盖等测试要素,最后以启发式测试策略模型总结全章内容。
2.1 思维模型
上一章介绍了探索式测试的定义。在实际项目的测试执行过程中,读者是否
曾遇到如下的几个现象:
测试人员按照一个测试用例来执行测试,得到的程序输出与预期输出不
一致。
测试人员判断程序的行为并不是缺陷,但根据新的输出想到了新的测试
思路。
测试人员根据新的测试思路采用不同的输入并检查程序输出。
测试人员再次根据新的测试结果选择新的输入,反复地探索下去,最终
发现了一个程序缺陷。
测试人员发现该缺陷的测试思路或测试用例并没有出现在最初的测试设
计或测试用例文档中。
相信有很多读者熟悉上述的情景,也许有些人认为这是测试设计的遗漏,但笔
者要告诉读者的是,千万不要怀疑你的测试设计能力,因为这是非常正常的现象。
由于我们还没有真正深入地了解产品,不可能在测试设计的时候想到所有测试场
景,且在需求分析阶段不可能评审到所有的隐含需求,所以最初的测试设计并不能
捕获程序的所有缺陷。为了发现尽可能多的缺陷,测试人员需要在测试过程中,根
据测试反馈持续地优化测试模型、调整测试设计。这是一个研究、实践和探索的过
程。了解探索式测试的思维将有助于测试人员更有效地测试。
根据测试专家Erik Petersen 对于探索式测试的理解[Erik11],笔者抽象出探索
式测试的思维模型CPIE (Collation, Prioritization, Investigation, Experimentation ),
如图2.1 所示。该测试模型包含迭代的4 个阶段:整理、排序、调查和实验。
图2.1 探索式测试的思维模型
整理(Collation ):尽最大可能收集关于被测产品的信息,去了解和理解
它们。
排序(Prioritization ):确定所有测试任务的优先级。
调查(Investigation ):对即将执行的测试任务进行仔细的分析并确定测
试输入和预期输出。
实验(Experimentation ):实际地去测试,验证我们的预测是否正确,检
查我们在整理阶段获取到的信息是否正确。根据实验结果,测试人员将
收集更多的信息,并调整测试任务的优先级。
对于探索式测试的思维过程,测试专家 James Bach 提出了如图2.2 所示的思
第2 章 探索式测试设计概论 27
维模型。该模型包含一组启发式问题,以推动测试人员在知识(Knowledge )、分
析(Analysis )、实验(Experiment )和测试故事(Testing Story )上深入探究。
知识:掌握产品特性、开发技术、测试技术和领域规则等测试需要的知识。
1
分析:分析产品风险、测试覆盖、测试方法、测试先知和产品缺陷等测
试相关因素。
实验:配置、操作、观察和评估被测产品。
测试故事:用测试计划、测试报告和可工作的产品等组成测试报告,以
准确地反映测试状态和产品质量。
图2.2 探索式测试的思维过程
从图2.1 和图2.2 可以看出James Bach 和Erik Petersen 的观点都强调通过实
验(Experiment )来持续改进测试设计。他们认为瀑布式的测试设计和用例编写
并不会产生优质的测试设计,测试人员还需要在测试执行的时候持续扩展新的测
1 测试先知(Test Oracles )是一组信息,用于确定测试过程中发现的问题是否为软件缺陷,稍
原创力文档


文档评论(0)