人工智能如何重塑质量与测试的未来

真正的进步需要能够不仅生成测试,而且随着时间推移维护和发展测试,并纳入战略性人工监督的系统。

译自 Rethinking AI in the Future of Quality and Testing,作者 Anirudh Ramanathan。

随着生成式AI的兴起,软件测试正在经历一场重大变革。虽然许多人对AI生成测试的能力感到兴奋,但这还不够。

目前的方法通常假设所有类型的测试——集成测试、端到端测试、单元测试——都可以完全自动生成,因为模型可以编写代码。但这不足以支持下一代弹性、复杂的软件。

真正的进步需要这样的系统:不仅能够生成测试,还能够随着时间的推移维护和改进测试,并纳入战略性的监督。如果没有这一点,AI驱动的测试将无法满足现代开发的复杂需求

AI在测试中的现状:其不足之处

AI辅助测试仍处于起步阶段,往往侧重于表面的改进,而忽略了更深层次、更具变革性的机会。这种早期的方法揭示了两个限制其潜力的关键误解。

  1. 狭隘的测试所有权:许多AI工具生成大量的测试,但依赖人工来解释和维护它们。这并没有减少工作量——反而增加了工作量,因为测试人员现在必须考虑AI生成的测试中的缺陷,这使得调试变得复杂,并错失了自适应测试的机会
  2. 战略覆盖范围和人工洞察:大型语言模型 (LLM) 驱动的模糊测试可以快速产生边缘情况,但仅靠原始覆盖率在没有人工输入的情况下就显得苍白无力。软件开发生命周期 (SDLC) 在各个行业差异很大,这使得AI难以有效地推广测试方法。人工监督对于瞄准高风险区域、优先处理关键业务流程以及确保测试策略与特定行业和组织的需求相符至关重要。

AI测试系统应该做什么

为了克服这些限制,AI驱动的测试系统必须超越简单的测试生成,通过使测试适应代码更改、提供有针对性的见解和拥有整个测试生命周期来发展。

  1. 生成并帮助改进测试:AI应该为常见情况和边缘情况生成测试,并在代码演变时自动更新它们,无需额外的人工工作即可保持测试套件的相关性。
  2. AI驱动的洞察力的战略监督:人工根据业务目标设定优先级。同时,AI通过呈现关键见解和模式来消除噪音,查明高风险区域并改进测试策略。
  3. 拥有测试生命周期:除了生成之外,AI还必须处理执行、维护和解释。通过将bug与GitHub问题关联起来并将修复与pull请求关联起来,AI创建了一个反馈循环,不断改进测试以匹配实际性能。

生成式AI如何改变软件开发

想象一下,生成式AI不仅生成测试,还重塑我们构建和扩展软件的方式。如果做得正确,AI不仅会自动化任务,还会激发更快的创新、无畏的开发和更智能的策略。而QA?它变得更加关键,引导这些系统专注于真正重要的事情。

为开发人员提供更快的反馈

等待数小时或数天才能查看代码更改是否破坏了某些东西?借助AI测试,开发人员可以立即自信地尝试大胆的想法。您一直犹豫不决要重构的功能?现在您可以放心地处理它了。

自信地扩展质量

随着公司规模的增长,代码库往往会变得混乱。但是,想象一下AI持续监控,在快速增长的过程中捕获细微的bug。这就像拥有一个不知疲倦的伙伴,帮助您快速前进而不会破坏任何东西。

QA的演变角色:战略监督

担心AI会取代QA和开发人员?恰恰相反。QA和开发人员将指导AI专注于关键问题,而不是运行手动测试。虽然AI可以处理许多任务,但在领域层面的优先级决策很棘手,仍然需要人工参与——这就是您的专业知识大放异彩的地方。

挑战与前进的道路

这种转变不会在一夜之间发生。AI需要时间才能在决策方面变得可靠并减少诸如幻觉之类的错误,同时团队逐渐建立信任。从小处着手——让AI处理重复的冒烟测试,而人工则专注于复杂的情况——有助于简化过渡。随着AI证明其可靠性,QA可以转向战略监督,AI接管日常测试工作。

展望未来:测试的未来

随着AI推理和决策能力的提升,它将从辅助工具进化为能够处理复杂测试任务的智能体——从生成和维护到执行和解读。这一转变将使团队能够专注于战略目标,推动创新和增强韧性。虽然建立对AI的信任需要时间,但真正的突破将来自于AI变得更加可靠,从而带来更快的开发速度、更低的成本以及更强大、更可靠的软件。

将生成式AI集成到软件开发测试中是软件开发演进的关键一步。随着AI系统能力的增强,它们将超越简单的任务自动化,做出明智的决策,将人工监督减少到战略指导。拥抱这项技术,为未来铺平了道路,开发人员可以无畏地创新,因为知道AI智能体在背后支持——确保高质量的代码、无缝的协同以及突破界限的自由,无需犹豫。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注