收藏 分享(赏)

探索式测试参考资料.docx

上传人:cjc2202537 文档编号:484913 上传时间:2018-04-07 格式:DOCX 页数:11 大小:164.12KB
下载 相关 举报
探索式测试参考资料.docx_第1页
第1页 / 共11页
探索式测试参考资料.docx_第2页
第2页 / 共11页
探索式测试参考资料.docx_第3页
第3页 / 共11页
探索式测试参考资料.docx_第4页
第4页 / 共11页
探索式测试参考资料.docx_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、目录1.什么是探索式测试 .21.1 探索式测试与即兴测试的区别 .21.2 探索式测试与结构性测试的区别 .21.3 探索性测试(ET)与一般测试方法(ST-基于文档的测试)的区别: .22.探索性测试的分类 .33.探索式测试的优缺点 .33.1 优点: .33.2 缺点: .43.3 探索式测试处于摸索和发展阶段,存在一定的困难和问题: .44.探索式测试的思维模式 .55.探索式测试覆盖率 .55.1 Structure.65.2 Function.65.3 Data .65.4 Platform.65.5 Operation .75.6 Time.76.探索式测试的实施过程 .77.

2、探索性测试的步骤 .87.1 测试前的准备 .87.2 测试执行 .88.探索性测试工具 .98.1 Microsoft Test Manage (MTM) .98.2 Telerik Test Studio.109.报告与评审 .101.什么是探索式测试探索式测试是一种测试思维技术,强调测试人员同时开展测试学习、测试设计、测试执行和测试结果评估等活动,以持续优化测试工作。1.1 探索式测试与即兴测试的区别探索式测试与即兴测试的都强调“即兴发挥” ,利用直觉和经验,快速地试验被测试应用,并不停地调整测试策略。但是,探索式测试是带着“反思”的学习和优化过程。在探索式测试中,测试人员不断地提出假设

3、,用测试去检验假设,通过解读测试结果来证实或推翻假设。在这个过程中,测试人员不断完善头脑中被测试应用的模型,然后利用模型、技能、经验去驱动进一步的测试。相比即兴测试不注重测试计划和设计,探索式测试在不停地优化测试模型和测试设计。因为测试设计和测试执行的切换速度很快,许多人误以为探索式测试没有测试计划和设计。实际上,这些活动是被切分到细微的时间片中,并被反复执行。1.2 探索式测试与结构性测试的区别结构性测试是根据程序实现来设计测试用例,把测试对象当成一个透明的盒子,在测试之前设计覆盖所有路径的测试用例,对程序所有逻辑路径进行测试。而探索性测试是根据每次测试的进展和结果,优化测试计划,在测试的过

4、程中逐渐实现覆盖应用程序的所有逻辑。1.3 探索性测试(ET)与一般测试方法(ST- 基于文档的测试)的区别:ET ST测试与测试 测试设计和执行在同一时间 测试用例在之前就设计和记录好,用例的关系 完成,而且他们不是必须记录下来过后再测试执行或被其他测试人员执行与测试执行的关系可以提升测试执行 可以控制设计执行过程的交互性就像一个对话,是自动导向的 就像做个已准备好的演讲,由之前想好的想法引导着2.探索性测试的分类自由式探索式测试 - 没有任何规则和模式,只是不停的去做;基于场景的探索式测试 - 使用场景作为指导,追寻一些并没有包括在脚本中的特殊路径;基于策略的探索式测试 - 结合了测试策略

5、的经验和探索型测试人员的随机性;基于反馈的探索式测试 测试人员通过咨询那些覆盖指标(代码覆盖、用户界面覆盖、特性覆盖、输入覆盖或者其中的某一些组合)来选中新的测试用例,以使这些覆盖指标得以提高。其中,基于反馈的探索式测试工具是非常有价值的,它可以是测试人员保存、搜索测试历史并据此采取实时行动, 如图 1 所示。图 13.探索式测试的优缺点3.1 优点:最明显的一个是不用花太多的时间在编写测试用例(特别是在更新测试用例上);增加测试过程的乐趣,不再是一步一步按照之前写好的测试用例走,可以发挥自己;的创意,去进行测试,提高测试人员的积极性。更快的学习一个产品(动手操作后,学习更快);根据数据显示,

6、能增加新的或难以发现的 bug 的可能性;有助于有效的测试自动化(查找潜在风险区或有价值测试区) 。从个人发展的角度看,探索式测试有助于测试新手快速学习。探索式测试将学习与应用作为相互支持的活动逐步展开,为测试人员的技能提升提供了平滑的学习曲线。此外,并行地进行测试学习、测试设计、测试执行和测试评估为测试人员的成长提供了持续、及时、有效的反馈,这有助于主动学习和快速调整。3.2 缺点:它在测试管理上的局限性使得 ET 过程很难去协调和控制(ET 主导的测试模型)它在 bug 的重复利用或重现上提供有限的支持它对于测试人员的测试技能和行业知识依赖比较大当与 ST 进行组合时,会有重复测试的风险(

7、漏测的风险比重复测试更有危险性)它不能完全保证最重要的 bug 已经被发现了很难定义 ET 的生产率3.3 探索式测试处于摸索和发展阶段,存在一定的困难和问题:探索式需要建立在对产品深入了解的基础上;探索式测试的适合人员不是以新手老手为衡量标准,必要的技能才是考量的要素;探索式测试考虑尽量减少编写文档的时间,而实际中编写文档和测试用例是一项必须的任务;探索式测试属于软件测试的上下文驱动学派,具体采用何种方式来进行探索式测试实践,或如何组合多种实践方式都是依赖于项目本身的上下文环境。4.探索式测试的思维模式在进行探索式测试的过程中,需要根据所处阶段的需要,融合 James Bach所提出的组启发

8、式思维模型。模型包括:知识、分析、试验、测试故事。知识(Knowledge):掌握产品特性、开发技术、测试技术和领域规则等测试需要的知识。分析(Analysis):分析产品风险、测试覆盖、测试方法、测试先知和产品缺陷等测试相关因素。实验(Experiment):配置、操作、观察和评估被测产品。测试故事(Testing Story):用测试计划、测试报告和可工作的产品等组成测试报告,以准确地反映测试状态和产品质量。由图可以看出,其他的三个步骤都需要与分析相结合,这说明了探索式测试注重思考,与随机测试是不同的。5.探索式测试覆盖率我们通常说的覆盖率,指产品覆盖率。针对产品覆盖率,探索式测试的考虑角

9、度有以下几个方面。5.1 StructureStructure 指产品的一个因素。Structure 覆盖是指我们要的产品是怎么构成的,要覆盖的就是构成这个产品的部分。以打印机为例,structure 覆盖要考虑: 打印需要用到的文件 实现打印功能的代码模块 在这个模块里面的代码语句 在这个模块里面的代码分支5.2 FunctionFunction 是指我们要测试这个产品能够做什么。以打印机为例, Function覆盖需要考虑: 打印,页设置,打印预览 打印 range,打印复制,zoom 打印所有的,当前页,或指定的 range5.3 DataData 指产品能够对数据方面的考虑,处理的数据

10、类型。以打印机为例: 打印文档的类型 文档里面的元素,文档的大小和结构 关于怎么打印的数据5.4 PlatformPlatform 指产品依赖的对象,依赖什么才能使用。以打印机为例: 打印机,spoolers , network behavior 计算机 操作系统 打印驱动程序/设备5.5 OperationOperation 指这个产品如何使用,产品的使用步骤是否合理/正确。以打印机为例: 默认情况下使用 真实环境使用 真实的场景下使用 复杂的流程下使用5.6 TimeTime 指产品在何时会受影响,在不同时间下的表现。以打印机为例: 尝试在不同的网络或端口的速度使用 一个文档打印完,紧接着

11、打印另一个文档,或隔很长时间再打印 尝试与时间相隔的限制,比如使用 spooling、 buffering、timeout 尝试每小时、每天、月底或者年底打印报告 尝试从不同的 2 个工作站同时打印6.探索式测试的实施过程 探索式测试是一种测试风格,它鼓励测试人员依据当前语境选择合适的测试实施方法。而 SMART 原则为探索式测试提供了一些很好的建议 :Specific(具体的):测试需要一个具体的目标。Measurable(可度量的):有明确的度量可以评估目标是否达成。Achievable (可实现的):当前的目标应该是可实现的。这潜在地要求将一个大的目标分解为多个小目标,每个小目标也是具体

12、的、可度量的。此外,跟踪小目标的完成情况也提供了整体进度的可度量性。Relevant(相关的):目标要切合当前语境,符合团队利益,且不忘企业愿景(vision) 。Time-boxed(有时间限制的):为每个目标设定一个合理的最后期限。这是帮助测试人员在固定的时间窗口(time window)中排除不相关干扰、专注工作。依据 SMART原则,测试人员可按如下描述逐步展开探索式测试。1.准备需要的环境或者文档资料2.测试人员制定测试计划。他分析被测试应用,确立若干个具体的测试任务,每个任务针对一个可能的风险。3.制定测程1) 将测试任务分解为一系列子任务,每个子任务都有明确的退出条件和时间限制。

13、2) 在短暂的测试计划之后,测试人员根据优先级选择一个小任务,在一个固定的时间窗口中执行探索式测试。建议时间窗口的长度是 60-90分钟,因为这是人脑可以专注工作的极限时间。3) 在时间窗口内,设计测试,执行测试。4) 评估测试结果,获得知识,根据知识和发现再设计测试,以扩展测试广度和深度。4.在时间窗口结束后,测试人员应该适当休息,放松思维。5.反思当前的测试进展,并优化测试计划。紧接着开始新一轮探索式测试。7.探索性测试的步骤7.1 测试前的准备提出有用的问题观察什么事情在发生描述自己能够感觉到的东西对于自己的所知进行批判性的思考组织和管理业务上的规则能够设计假设和进行试验尽管已经知道了仍

14、然进行思考分析其他人的思考方式根据因果关系进行推导7.2 测试执行针对每个任务,遵循基于测程的测试管理法设计测试章程。如何设计测程:测程的模板包括三项内容:测试对象、测试方式、测试目的。测程不可过于详细。例如,要对用户信息进行测试,以下分别为不合格的测程和优质的测程:思维过程:依靠测试人员的测试知识,分析测试对象、测试方法。推荐工具:使用思维导图,通过“任务 测程”的层级结构表示方式,编写测程,很易于内容扩展。若测试任务较多,可以按照逻辑功能,将任务分多个导图文件编写,便于后续的维护。我们在 ET 测试过程中,需要不停地产生新的分支(test idea),而不是一条直线走到底。因为我们根本不知

15、道走另外一个分支后,会发生什么事情。但凡事都有个度,我们需要定期的去 check 我们现在测试的东西是否与我们被分配到的任务是否一致。探索编辑姓氏使用输入值“OMalley ”以图发现档案编辑功能是否能处理名字里含有撇号的情况探索用户名的正确性判断使用多种异常用户名以图发现用户名一项的正确性判断是否完善8.探索性测试工具目前市面上,针对探索式测试已经存在一些了测试工具,像 Test Studio 、Microsoft Test Manage、 Rapid Report、qTest Explorer 等等。这些工具都是支持进行探索式测试的,只是支持的力度大小问题。8.1 Microsoft Te

16、st Manage (MTM)能支持录制、记录动作信息,对动作进行扩充,缺陷管理等,同时截图和做注释方面很好用。缺点是需要安装的组件太多了,系统配置也比较繁杂,但是其收集到的信息比较全面。8.2 Telerik Test StudioTelerik 的系列产品有很多,针对不同的平台,包括手机、桌面程序、web等。并且可以根据自己的实际需求,选择性安装组件,比较灵活。但是,经过使用,发现 Telerik 对 web 端操作的录制并不友好。页面上的许多控件、点击动作无法识别,导致自动化回放测试的过程无法正常进行。探索式测试作为一种测试风格,可以使用任何开发和测试工具。测试者应该根据语境选择合适的工具,去完成自己的使命。同时,软件测试存在大量的创新空间,测试人员应该勇于开发自己的探索式测试工具。9.报告与评审编写简报,当面将测试的情况传达给领导、相关干系人,积极发现产品或测试的问题,根据测程的结果来调整下一步的测试计划。下一步,可以新增几个测程,以调查最新发现的风险;也可以合并几个测程,将省下的时间分配给更重要的测程。一切调整的目标都是为了优化测试的价值。思维过程:分析已有的实验数据、结果,设计新一轮的测试工作。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 教育学

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报