生成式人工智能使软件开发人员能够比以前更快地编写更多代码。对于被委托确保应用程序按时发布并且没有错误的软件质量测试工程师来说,GenAI提出了解决这个问题的挑战和解决方案。更具体地说,它提供了一个机会来强调测试用户体验的重要性。
长期以来,质量保证工程师一直被要求优先考虑功能、性能和安全性测试,而不是其他方面。现在是测试新时代的黎明,它证明了更全面,并为工程师和测试人员提供了广泛的好处。
软件测试程序的重点
软件质量已经演变为以下七个维度的优先级,按照它们对业务价值的重要性排序:
功能: 确保应用程序的适应性,使其满足其设计的要求。
可用性: 评估应用程序的用户界面和工作流,以确保它可以很容易地导航和理解。
性能: 在不断变化的条件下测试应用程序的性能,以避免延迟问题并优化响应时间。
一致性: 验证应用程序的输出,以确保随着时间的推移和在不同的区域设置中获得相同的结果和行为。
安全性: 评估应用程序的潜在攻击漏洞,以确保数据始终受到保护。
弹性: 确保系统在不利和不可预测的条件下保持运行,以优雅地恢复并在没有严重故障的情况下继续运行。
采纳用户反馈: 根据用户反馈,确保应用程序适应并纳入新信息(作为特性/功能成熟度的一部分)。
这个清单已经相当令人生畏了。实现每个维度的完全覆盖有点像试图击中一个移动的目标。期望可以迅速改变,满足期望所需资源的可用性也可以迅速改变。GenAI提供了一个这样做的机会。
功能、性能和安全测试仍然是主导
GenAI使软件开发人员能够产生高度创造性的应用程序(例如,那些生成内容的应用程序,包括艺术和音乐作品),并且与传统测试相比,测试这些应用程序需要修改方法。与传统应用程序相比,这些应用程序的可能输出范围更加流畅/灵活,从而增加:
·随机性(不太可预测的输出)
·意外行为/输出的风险
·来自密集算法的性能瓶颈导致硬件资源的更高压力
应对上述挑战的唯一方法是以牙还牙,为测试计划和执行部署genai辅助工具。自动化测试工具应该成为任何测试计划的基石。对于测试工程师来说,这意味着需要更多的工作来审核软件、设计测试计划,并大规模地执行它们。但是,虽然代码开发的绝对数量和速度将继续需要相当多的关注,但测试工程师将需要继续分析用户交互,模拟和验证应用程序的响应和行为,特别是在人工智能模型可能难以生成准确输出的边缘情况下。
GenAI需要一种新的质量保证方法,一种更智能、更快速的方法。我们需要开放自己,应用创造性的测试程序来适应这种构建软件的新方式。通过重新思考我们的一些旧方法,我们可以更好地在早期预测问题,并交付性能更高、更安全、更用户友好的软件。
关注微信公众号【赛希咨询】,了解更多精彩内容。