测试专业人士眼中的黑盒测试——测试工程化实践之路(05)

发表于:2023-3-29 09:32

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

 作者:肖利琼    来源:51Testing软件测试网原创

  1.5 测试专业人士眼中的黑盒测试
  上面4个故事都与测试技术有关,通过阅读它们,读者应该对测试技术及其应用有了自己的理解。
  测试行业新人经常会对软件测试包含哪些常用方法,以及如何学习软件测试等问题感到困惑。测试方法是多种多样的。在开发不同类型的项目和遇到不同的问题时,我们采取的测试策略和测试方法有所不同。在多年的测试工作中,作者使用较多的是以业务为主的系统测试
  作者所在团队的测试人员勇于挑战,敢于尝试。当遇到偶发性漏测bug时,我们尝试开启内存泄露测试、压力测试性能测试等专项测试;当出现黑盒测试的“盲区”时,我们积极寻找其他手段修复bug,包括静态代码分析、动态代码调试和插桩编译等白盒测试方法;当因开发人员对项目更改而有可能出现测试不充分的情况时,我们采取灰盒测试方法,或者通过代码覆盖率分析方法设计相关测试用例,进行补充测试;当需要提升测试效率时,我们会有针对性地开发一些测试辅助工具,或者引入业界已有的自动化测试框架或工具。
  无论是采用白盒测试方法还是灰盒测试方法验证某个功能点,也无论是采用手工方式还是自动化方式执行测试用例,这些方法和方式都是我们有针对性采用的重要测试方法和测试手段,在不同的复杂的软件系统或子系统测试中,它们发挥着重要作用。基于它们的应用特点,我们将它们统一划入专项测试范畴。
  如果我们把测试方法比作一条河流,那么系统测试为主河道,易用性测试、可靠性测试、压力测试、性能测试和安全性测试等就是这条河流的分支河道(即专项测试),它们与系统测试相辅相成,用于验证软件系统中各个方面的质量特性(见图1-5)。自动化测试是提升系统测试和专项测试效率的“利器”。
图1-5  测试方法与河道的类比
  我们根据不同产品的需求选择不同的专项测试作为测试时的补充,以便发挥不同专项测试的优势。对于一些类别的产品,我们需要改变测试方法落地的方向,如腾讯公司微信产品的测试主方向是用户体验方面。我们在尝试使用一种新方法或新工具时,并不是每一次都能带来明显回报,但我们仍然要勇于尝试,力求创新。
  一些测试人员认为黑盒测试就是功能测试,其实二者是有区别的,黑盒测试是一种软件测试方法,而功能测试是对软件的功能特性进行测试的统称。软件功能层面的测试可以采用黑盒测试方法、白盒测试方法和灰盒测试方法。目前,在测试行业内,测试以功能测试为主,而且在测试功能时,大部分人采用黑盒测试方法,于是便产生了上述误区。
  尽管技术在不断更新,但一些底层逻辑是不会变的。美国软件测试专业人士Cem Kaner等人合著的《软件测试经验与教训》汇总了293条来自软件测试界专业人士的经验与建议,阐述了如何做好测试工作、如何管理测试,以及如何澄清有关软件测试的常见误解,其中的“经验22”提到“黑盒测试并不是基于无知的测试”。
  经验22:黑盒测试并不是基于无知的测试
  黑盒测试意味着产品内部知识在测试中不起重要作用。大多数测试员都是黑盒测试员。想要做好黑盒测试,就要了解用户及其期望和需求,了解技术,了解软件运行环境的配置,了解这个软件要与之交互的其他软件,了解软件必须管理的数据,以及了解开发过程等。黑盒测试的优势在于测试人员与程序员的思考方式不同,因此,测试人员有可能预测出程序员忽略的风险。
  黑盒测试强调有关软件的用户和环境知识,这一点并不是所有人都喜欢。我们甚至把黑盒测试描述为基于无知的测试,因为测试人员自始至终都不了解软件内部代码。我们认为这说明人们对测试团队存在误解。我们并不反对测试人员了解产品的工作原理,测试人员对产品了解越多,了解产品的方式越多,测试它的效果越好。但是,如果测试人员主要关注源代码,以及能够从源代码导出(直接生成)的测试,那么测试人员所做的工作也许是程序员已经做过的,并且测试人员掌握的关于这些代码的知识少于程序员。
  尽管《软件测试经验与教训》已出版多年,但是书中提到的很多经验与教训,仍然值得我们学习、借鉴。
版权声明:51Testing软件测试网获得作者授权连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号