分享一个自己写的 AI 测试插件 —— AITestCase

前言

大家好,我是一名刚工作一年的测试工程师。去年 12 月到今年 2 月,趁着有点空闲时间,我用业余时间做了一个 AI 驱动的测试工具 —— AITestCase,一款 Chrome 浏览器扩展插件。

最近因为一些个人原因,这个项目暂停迭代了一段时间。现在我打算重新开始维护和更新它,所以想在这里和大家分享一下,也希望能收集到一些实用的需求和建议。

项目地址:https://github.com/LiuYuan0115/AITestCase


💡 为什么做这个插件?

做测试这一年,我发现日常工作中有几个痛点:

  1. PRD 分析费时间:需求文档来了,要手动梳理功能点、提取测试点
  2. 测试用例编写重复劳动多:很多场景都是相似的,但还是要一条条写
  3. UI 自动化成本高:写 Selenium 代码又慢又容易坏,维护成本高
  4. 质量评估靠人工:用例写完了,覆盖度够不够、有没有遗漏,得靠经验

所以我想,能不能用 AI 来辅助这些工作?让 AI 帮我们做重复劳动,人只需要审核和调整。于是就有了这个项目。


🎯 插件能做什么?

AITestCase 是一个端到端的 AI 测试工作流工具,从需求分析到用例生成,再到 UI 自动化执行,都能用 AI 来辅助完成。

主界面一览

插件主界面

插件提供了三个角色视图(PM / DEV / QA),每个角色都有针对性的 AI 助手。我们测试人员主要用 QA 角色。

QA 工作流:5 个步骤搞定测试

1.分析 → 2.PRD → 3.测试点 → 4.用例 → 5.测试

QA 工作流

第 1 步:分析 — 提取需求文档内容

第 2 步:PRD — AI 生成优化的需求文档

PRD 分析

第 3 步:测试点 — 自动提取测试要点

测试点思维导图

第 4 步:用例 — 生成测试用例

测试用例思维导图

第 5 步:测试 — UI 自动化执行

UI 自动化执行

执行完成后,会生成测试报告:

测试报告


🛠️ 技术实现

架构设计

整个项目分为三个服务:

服务 技术栈 端口 职责
Agent Server Python FastAPI + LangGraph 8000 AI 对话、测试用例生成、文档管理
Midscene Sidecar Node.js + Midscene SDK 3000 UI 自动化执行引擎
Chrome Extension Vue 3 + WXT 浏览器插件前端

UI 自动化的核心:三种执行模式

这是我花时间最多的部分。为了平衡 准确性速度成本,我设计了三种执行模式:

模式 执行方式 适用场景 AI 开销
自由模式 AI 一次性规划整个流程 复杂的端到端测试
混合模式 逐步执行,三层降级策略 标准结构化用例
回归模式 回放保存的 YAML 基线 回归测试 零(不调用 AI)

混合模式的三层降级策略是亮点:

  1. Layer 1: Instant — 正则匹配步骤意图,直接调用基础操作(点击、输入、滚动等),零 AI 开销
  2. Layer 2: aiAct — 如果正则匹配失败或操作失败,让 AI 理解步骤并执行
  3. Layer 3: deepThink — 如果还失败,启用 AI 深度思考模式,分析页面后再执行

这样既能保证成功率,又能降低 AI 调用成本。大多数标准操作("点击登录按钮"、"在邮箱输入框中输入 xxx")都能被 Layer 1 直接处理,不产生 AI 费用。

技术亮点


🎬 实际应用场景

场景 1:快速分析新需求

PM 发来一个需求文档 URL:

  1. 打开插件,输入 URL
  2. 点击"分析" → AI 自动提取内容
  3. 点击"PRD" → AI 生成结构化需求文档
  4. 点击"测试点" → AI 提取所有测试要点

原本需要 1-2 小时的需求分析工作,现在 5 分钟搞定。 我只需要审核 AI 的输出,补充遗漏的边界条件。

场景 2:批量生成回归用例

每次版本迭代,都要写一堆重复的登录、注册、密码重置的用例:

  1. 在"用例"步骤输入简单描述:"用户登录:邮箱密码登录,密码 8-16 位,失败 3 次锁定"
  2. AI 自动生成完整的测试用例(正常登录、错误密码、账号锁定等场景)
  3. 导出为表格格式,导入测试管理平台

场景 3:探索性测试 → 自动化回归

第一次测新功能时:

  1. 手动测试一遍,记录步骤
  2. 把步骤粘贴到插件,选择"自由模式"执行
  3. AI 理解步骤后自动执行,成功后自动保存为 YAML 基线
  4. 下次回归测试时,直接"回归模式"回放 YAML,零 AI 开销

📊 使用体验

优点

局限性(坦白说)


💬 希望听到你的声音

这个项目是我工作一年来对测试工作的一些思考和实践。功能也不够完善。

如果你对这个项目感兴趣,或者有任何需求、建议,欢迎:


📝 快速开始

如果你想试试这个插件,按照以下步骤:

1. 环境要求

2. 克隆项目

git clone https://github.com/LiuYuan0115/AITestCase.git
cd AITestCase

3. 启动后端服务

cd agent-server
python3 -m venv venv && source venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
# 编辑 .env 填入你的 OPENAI_API_KEY
python agent_server.py

4. 启动 UI 自动化引擎

cd agent-server/midscene-sidecar
npm install
npm run dev

5. 构建 Chrome 扩展

cd solvely-mvp
npm install
npm run dev

6. 安装扩展

  1. 打开 Chrome,访问 chrome://extensions/
  2. 开启「开发者模式」
  3. 点击「加载已解压的扩展程序」
  4. 选择 solvely-mvp/.output/chrome-mv3

详细文档见项目 README:https://github.com/LiuYuan0115/AITestCase/blob/main/README.md


结语

作为一个刚入行一年的测试,这个项目让我学到了很多:从 Python 后端到 Vue 前端,从 LangGraph 智能体到 Chrome 扩展开发。过程中踩了无数坑,但每次解决一个问题都很有成就感。

虽然项目还有很多不完善的地方,但我相信持续迭代能让它变得更好。希望能和 testerhome 的大家一起进步学习~

最后,感谢你看到这里!如果觉得这个项目有点意思,欢迎 Star ⭐️ 支持一下~


项目地址https://github.com/LiuYuan0115/AITestCase

关键词:#AI 测试 # 测试用例生成 #UI 自动化 #Chrome 扩展 #LangGraph # 测试工具


↙↙↙阅读原文可查看相关链接,并与作者交流