AI应用于软件测试

199 阅读5分钟

【测试中的人工智能】自学活动二:AI应用于软件测试

写在最前:计划增强自己在人工智能软件测试方面的技能和能力。所以想通过一系列的任务来进行学习和提升,如果有感兴趣的伙伴,欢迎在评论区分享!

任务二

  • 人工智能如何应用于软件测试
  • 使用并分享对AI测试工具的见解

Summary

在过去一段时间,搜罗了很多现在流行的AI测试工具,发现大多数AI测试产品都集中在测试用例和自动化测试两个模块上,这也是它们的主要发力点。

  • AI测试工具能够基于元素内容、现有的测试用例等,自动生成全面且高效的测试用例,包含正向、负向以及边缘、异常场景的测试用例。能够节省编写测试用例时间和精力,快速构建出全面覆盖的测试套件。
  • 自动化测试也是AI测试工具的一个重要模块。这些工具通过机器学习和自然语言处理等技术,能够自动识别和执行测试任务,智能录制测试过程,提高测试效率并减少人为错误。AI驱动的自动化测试不仅能够加速测试流程,还能够提高测试覆盖率和准确性,从而帮助团队更快地交付高质量的软件产品。

总的来说,AI测试工具在测试用例和自动化测试方面的发展为软件测试带来了不小的改变。在经过比较和分析后,我最终选择深入使用了TestCraft、Katalon Studio、Mabl和BrowserStack这四个工具。以下是我从中获得的一些经验总结:

TestCraftBrowserStackKatalon StudioMabl
✅ 生成元素级别测试用例✅ 生成元素级别自动化测试代码✅ 元素级别 Accessibility测试✅ 无代码/低代码完成自动化测试✅ 生成测试数据✅ 生成Test Case✅ 自然语言与代码相互转换✅ 根据产品自动生成用户旅程,回归测试用例✅ 根据AC生成测试用例✅ 无代码/低代码完成自动化测试✅ 无代码/低代码完成自动化测试
🥹 无测试步骤录制🥹 除录制外其他AI功能需付费🥹 仅有14天试用期

工具介绍目录:

  1. TestCraft
    • 使用人工智能生成测试用例
    • 根据元素生成自动化测试
    • Accessibility Test
  2. Katalon Studio
    • 智能生成和解释代码
    • 生成用户旅程地图、提炼关键流程生成回归测试
    • 根据AC描述生成测试场景、边缘场景、测试数据
    • 录制测试过程,同步生成自动化测试
  3. Mabl
    • 录制测试过程,同步生成自动化测试
  4. BrowserStack
    • 录制测试过程,同步生成自动化测试
    • 生成测试数据
    • 生成测试用例

工具详细介绍:

TestCraft

  1. 使用人工智能生成测试用例

以Trello的搜索按钮为例: image.png

Pick Element: 点击页面元素,等待提示“Element picked” image.png

重新打开TestCraft,点击“Generate Test Ideas”生成测试用例 image.png

  1. 测试自动化,支持:
    • Tools: cypress, playwright
    • Language: JS, TS
    • Page Objects: On/Off

勾选用例,生成自动化测试代码 (with/ without PO model) image.png

  1. Accessibility Test image.png

Katalon Studio

  1. 基于OpenAI GPT API构建,智能生成和解释代码。(官网介绍链接image.png

  2. TrueTest(官网介绍链接),但是使用此功能需要向其提供产品的具体信息,为保护客户隐私就没再尝试 image.png

    • 生成用户旅程地图、提炼关键流程
    • 创建测试场景、边缘场景、测试数据
    • 监控 Web 应用程序中的用户旅程,以使用数据生成全面的端到端自动化测试用例,并确保基于真实世界使用情况的回归测试。
  3. 根据AC描述快速生成手动测试步骤,且已Jira集成。(官网介绍链接image.png

  4. 测试步骤录制(官网介绍链接

    4.1 在页面上操作,同步生成自动化测试 image.png 4.2 添加断言 image.png


Mabl

Mabl 和 BrowserStack两款工具几乎一样,都可以无代码/低代码完成自动化测试,以下步骤以Mabl为例(可参考:Mabl 文档

  1. 录制测试步骤 image.png
  2. 添加断言by Element, URL, Cookie, Variable, Email image.png
  3. 智能等待,查找元素等其他会用到的功能 image.png

BrowserStack

BrowserStack和Mabl的无代码/低代码自动化测试几乎一样,就不再赘述,可参考BrowserStack 文档 。除开无代码/低代码自动化测试外,还有一些比较出色的AI功能:

  1. AI生成测试数据 image.png
  2. AI生成测试用例

根据已有测试用例补充missing case,但是这个功能有些凭空造车,生成了一些不太有能用上的case 😕 比如下图中,我喂了一些login的case给AI,它也返回了一些case,可是我的产品中并没有'Sign up with email' , 'Forgot Username', 'Need help?'这些功能(不过感觉可以给产品分析一些思路) image.png 根据用例标题,补充描述、步骤 image.png


整体使用下来,我认为TestCraft是最容易上手最轻量的一款AI测试工具,仅需要安装chrom插件就好了,同时给出的测试用例和生成的自动化测试代码质量也是很好的,给我的测试工作提供了很大的便利!

同时如果你想体验一下无代码的自动化测试,那么可以试试BrowserStack,也是很神奇好用的一款工具!