在讨论生成AI时,一个常被提及的问题是:生成AI在软件测试的自动化中有哪些实际应用?生成AI能否真正帮助到自动化测试呢?如果可以,你又该如何在工作中利用它呢?
在这篇文章中,我们将探讨如何将生成式AI应用于软件自动化测试领域,从基础入手,逐步深入探讨。
什么是生成式AI?生成型AI是指一类AI模型,它们设计用来根据接收到的输入生成新的原创内容或数据。它不仅可以创建文本、图像和音乐,甚至还能生成代码,这使它在各个领域都很强大。
Gen AI有各种模型,这些模型分为不同等级,其中一些被归类为高级模型。
Gen AI模型
从上面的图表可以看出,大型语言模型(LLM,即Large Language Model)是我们应该重点关注的领域,因为它们有助于我们生成测试数据或测试用例,
- 自动化测试脚本,
- 测试案例,
- 测试场景,
- 测试计划和追溯性矩阵等…
来看看这个视频:这是一段视频的链接: https://youtu.be/Y7xkCWvUKEk
手动测试中的生成式AI生成式AI可以通过快速理解和把握复杂的需求,并利用其庞大的知识库快速生成相关的测试场景,从而显著提高编写手动测试用例的效率。
利用Grounded Models,你可以提出特定情境下的问题,AI会根据特定情境提供回答,这些回答会从其检索到的数据中获取信息,这项技术叫做检索增强生成(RAG)。
我们可以用RAG来写
- 测试计划(Test Plan)
- 测试用例(Test Case)
- 测试设计(Test Design)
- 通过追踪矩阵来验证需求(Verify Requirements via Traceability Matrix)
大型语言模型在编码方面非常出色,因此我们可以利用这些模型的力量来更好地编写和理解测试自动化代码。
大型语言模型(LLM)熟悉下面列出的自动化测试工具如
- 雪松
- Playwright
- Selenium
- TestCafe
大模型(LLMs)也可以帮助我们重构测试代码、工具方法和页面对象模型代码,甚至帮助我们理解一些来自现有旧项目测试代码中难以理解的代码片段。
生成AI在自动化测试中的应用场景市场上有一些工具利用Gen AI的力量来进行测试自动化代码的运行。
- TestRigor
- ZeroStep
- AutoPlaywright
- Applitool
- EggPlant 等
这些工具让团队能够轻松创建强大的测试自动化脚本,而无需复杂的编码或构建复杂的测试自动化框架。通过利用生成式AI,这些平台简化了编写、维护和执行测试用例的整个过程,使测试人员可以专注于验证应用程序的功能,而不是纠结于代码细节。
例如,由AI驱动的测试自动化工具可以根据应用程序的行为、用户交互或预定义的规范自动创建测试场景。它们还通过在应用程序界面发生变化时更新脚本,提供智能维护测试,大幅减少了测试人员的工作量。这些工具具有诸如视觉检查、跨浏览器测试和通过自然语言输入创建测试的支持,使测试更高效、更易访问和更友好。
这种方法利用人工智能技术转变了传统的测试方法,提供更快的反馈和更高的测试覆盖率,并提供了一条确保不同平台软件质量更高效的方法。
软件测试中的GenAI课程上文中的大部分讨论只是我在 Udemy 上的新课程《在软件自动化测试中使用生成式 AI》中涉及的话题。
这是课程内容
该课程目前在 Udemy 上有发布时的促销活动,请在购买时使用优惠码 EA_OCT_24 享受优惠。
如果优惠码失效了,请留言告诉我,我会给你最新的优惠码。