专访史亮:带你走进探索式测试

发表于:2012-8-24 10:49

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:史亮    来源:51Testing软件测试网原创

分享:

  实际上,探索式测试能够很好地应用于所有四个象限,包括半自动化测试、自动化测试、基于工具的测试等。例如,第4象限的安全测试。请想象一下黑客是如何攻破软件产品的。他们的基本方法是“错误猜测”:通过分析已知的安全缺陷,抽象出可利用的缺陷模型,然后开发出相应的缺陷挖掘工具。这些工具可以是黑盒工具,通过持续地输入攻击数据来发现缺陷;也可以是白盒工具,通过扫描源代码(或目标代码)来识别漏洞。他们运行工具,分析输出中的蛛丝马迹,一旦发现疑似缺陷,便深入探索。整个攻击过程常常需要广泛扫描、深入挖掘、迂回前进、反复尝试。从安全测试的角度看,黑客都是探索式测试的绝顶高手。

  《探索式测试实践之路》系统地讨论探索式测试,有助于消除误解,建立正确的观念。其中,第7章详细讨论了探索式测试与测试自动化的互补关系,介绍了如何利用探索式风格来开发测试用例和测试工具。通过若干探索式自动化测试的实例,说明探索式测试的风格与思想同样适用于测试开发。

  51Testing:探索式测试的思维方式与其他的测试方法有什么区别吗?

  史亮:探索式测试的核心优势是有助于“学习”。此处的学习是指学(获取知识)与习(应用知识)的持续过程。

  对于测试人员,软件测试是一个持续学习并实践的过程。他的学习范围包括:行业知识、用户角色、软件产品、计算平台、编程技能、测试技术、程序缺陷、项目环境等。

  测试人员不需要在项目之初就掌握所有知识,他可以通过每天的工作去逐步理解用户、项目、技术和团队。更重要的是,他需要在每天的工作中实践所学的内容:规划测试方案、创建并执行测试用例、分析测试结果和编写测试报告。实践是练习,是“学”的自然延伸。知行合一才构成“学习”的完整内核。

  探索式测试在本质上鼓励测试人员去自由地探索、创造和应用。

  ● 探索是带着使命在某个空间中有目的的漫游,但没有预先确定的路线。探索包括不断学习和实践。

  ● 探索式测试者持续应用他所学到的知识。所谓“学而时习之,不亦悦乎”,探索式测试将学习与应用作为相互支持的活动逐步展开,为测试者的知识提升提供了平滑的学习曲线。

  ● 探索式测试有助于测试人员在合适的时间学习合适的内容,并立即应用,以获得真实反馈。这提高了学习效率和效果,并降低了浪费测试资源的风险。

  ● 在探索式测试中,测试者创造出一切有助于学习和实践的数据和工具。它们包括测试输入数据、结果检查脚本、数据分析报告和业务流程图表等。

  ● 探索式测试是一项富有智力挑战的活动,充满了乐趣。

  学习的一个重要成果是成为更优秀的测试人员。他们可以根据项目语境,选择合适的流程、技术和工具来高效地测试,以推动软件质量的提高。

  51Testing:执行探索式测试的具体方法有哪些?

  史亮:探索式测试是一种测试风格,强调依据当前语境选择合适的测试技术。

  在这种测试风格的指导下,涌现出了一批支持探索式测试的测试技术。例如,James A. Whittaker在《探索式软件测试》中提出了一套基于系统化错误猜测和测试隐喻的“漫游测试”技术,丰富了探索式测试的手段。又例如,Jonathan Bach和James Bach发明了基于测程的测试管理,显著地提高了探索式测试在测试组织、汇报、交流和度量上的能力。再例如,开发工具Microsoft Visual Studio 2010开始支持手工测试和探索式缺陷,Visual Studio 2012进一步增强了对探索式测试的支持,这体现了软件行业对探索式测试的认可,也表明探索式测试辅助工具和自动化将获得更多的重视与发展。

  51Testing:是否可以向我们介绍一些探索式测试工具?请举一个实例分析

  史亮:探索式测试原则上可以利用一切恰当的工具,不过许多工具鼓励观察和学习的风格,能够延展测试人员的能力,为广泛且深入的探索提供了支持。使用这些工具对提高探索式测试效率有明显帮助。

52/5<12345>
《2023软件测试行业现状调查报告》独家发布~

精彩评论

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号