跳出框框思考:我们的挑战不在于测试,而在于需求

2024-11-03   出处: linkedin  作/译者:Cristiano Caetano/溜的一比

让我们从一个简单的小实验开始。我问了 ChatGPT 以下问题:“你能描述一下软件测试概念的三个不同定义吗?”以下是我收到的回答:

这些对我来说是可以接受的。我明白,如果你遵循不同的测试理念,可能不会完全认同这些定义。但因为没有一个放之四海而皆准的定义,我对此表示理解。

简而言之,我认为测试就是确保应用程序满足需求并找到错误。我知道这听起来是过度简化了,但我还是坚持这个观点。

当需求不明确、不完整或缺失时,我该如何知道该测试什么?而如果某个错误未在任何地方记录,我又如何判断它是否是预期行为?毫无疑问,像探索性测试这样的方法有助于应对这些问题。它们允许测试人员在没有明确需求的情况下,通过启发、经验和创造力来引导测试。

但你不能依赖探索性测试来处理所有问题。很多公司需要更传统的方式,在这种方式下,测试计划、设计和规范是基于需求的。此外,自动化的趋势也在大力推进。

即使在测试领域取得了许多进展——专业认可、新方法论、更好的工具、自动化,甚至最近的人工智能——糟糕的需求仍然是我们面临的一个大问题。

我相信这种情况在未来只会变得更糟。让我们用水晶球来展望未来十年(或许稍微久一点)。随着 AI 的惊人进步,能够自主创建、维护和执行测试,问题随之而来:如果需求模糊不清且不完整,谁会在意自动化测试?它可能在测试错误的内容。

让我们回到今天的现实:即使是最聪明、最有经验和最具创造力的测试人员也会被糟糕的需求、不完整的 Jira 问题、模棱两可的 Confluence 页面——你能想到的一切所困扰。

你认为 AI 能够比我们更好地处理定义不清的需求吗?我可不这么认为! 前不久,我在 StackOverflow 上读到了一篇文章,标题为《构建软件最难的部分不是编程,而是需求》,我强烈推荐你去看看。

在文章中,作者讨论了 AI 在具有明确、有限规则的领域(如国际象棋)中表现出色,甚至超越了人类。然而,自动驾驶汽车面临着更大的复杂性,因为现实世界的驾驶涉及无数变量和边界情况。作者还指出,在软件开发中,技术规范旨在通过明确的规则来引导设计,就像象棋中的精确性一样。理想情况下,这些规范应该详细描述用户行为和系统流程,但我们通常收到的却是模糊的愿望清单、粗略的线框图和不明确的需求。频繁的需求变化或疏忽进一步复杂了开发过程。

一切从首先理解问题开始

自动化和 AI 可以处理那些乏味、重复且耗时的测试任务,但如果问题没有明确定义,那么一切还有什么意义呢?

在我看来,测试团队在 AI 时代的一个重要贡献将是确保需求的质量,并深入理解问题的本质。

在生成式 AI 时代,一切都从一个提示开始,输入的质量将显著影响输出的结果。 在这一新的工作流程中,测试人员需要提升他们的批判性思维能力,并增加对终端用户的同理心。他们不能再仅凭对手头任务(或被测系统)的表面理解来工作。

随着 AI 和生成式 AI 重塑我们的工作方式和思维模式,测试人员将承担起引导 AI 工具的职责,提供有关系统行为的上下文和细节,而 AI 将处理测试工作(从而让我们更多地专注于创造性和复杂的问题解决)。

在这种情况下,需求规格说明至关重要。它的撰写方式和细节级别非常重要。理解它如何融入更广泛的上下文同样重要。

我预计行为驱动开发(BDD)将再次兴起,并且 Gherkin 风格(Given,When,Then)规范将广泛应用。至少,我预测这些方法将进一步优化或演变。

想想看:这些方法易于学习和实施,并且用自然语言表达行为,语法简单明了(我猜这对机器理解来说更容易)。此外,它们鼓励团队协作,以确保对问题空间的共同理解。

例如,在这次采访中,Linux 的创建者 Linus Torvalds 提供了许多关于 AI 编程未来的有趣见解。他谈到了一种未来的可能性:自然语言本身可能会变成代码。他说:“在 AI 的帮助下,编程最终可能会涉及使用自然语言。开发人员可能不再使用精确的语法和结构化的代码,而是用口语化的术语来描述功能,AI 将把这些指令翻译成可执行的代码。这种高层次的抽象可能是人类意图与机器逻辑的终极融合。”

随着 AI 的进步,我们越来越依赖 AI 代理和大型语言模型来处理常规任务,测试人员必须适应这一新兴现实。

在未来,编写高质量的需求并引导 AI 产生正确的结果将成为至关重要的技能。

你对此有什么看法?请在这里分享你的想法和评论。


声明:本文为本站编辑转载,文章版权归原作者所有。文章内容为作者个人观点,本站只提供转载参考(依行业惯例严格标明出处和作译者),目的在于传递更多专业信息,普惠测试相关从业者,开源分享,推动行业交流和进步。 如涉及作品内容、版权和其它问题,请原作者及时与本站联系(QQ:1017718740),我们将第一时间进行处理。本站拥有对此声明的最终解释权!欢迎大家通过新浪微博(@测试窝)或微信公众号(测试窝)关注我们,与我们的编辑和其他窝友交流。
160° /1604 人阅读/0 条评论 发表评论

登录 后发表评论