一个简单易用的自动化测试工具,用于测试 AI Agent 的回答质量。
AI Agent Test Runner 可以批量读取测试用例,自动调用 AI Agent 接口,通过关键词匹配和大模型(LLM)语义评测来判断回答是否符合预期,并提供实时进度显示、历史记录管理及美观的 Web 界面。
- 自动化测试: 批量执行测试用例,支持分类管理。
- 多维度评测:
- 关键词匹配: 检查回答中是否包含预期的关键词。
- LLM 语义评测: 利用大模型评估回答的意图准确性和内容质量(支持评分)。
- Web 交互界面 (GitHub 风格):
- 实时进度: 测试执行时显示进度条。
- 对话详情: 支持查看每个测试用例的问题、Agent 回答及评测细节。
- 分页管理: 用例列表、历史记录均支持分页显示。
- 勾选测试: 在用例管理中可勾选特定用例进行针对性测试。
- 配置管理: 支持多套 Agent API 配置的增删改查与快速切换。
- 历史回溯: 自动保存每次测试结果,支持删除和查看详情。
agent-test-runner/
├── core/ # 核心业务逻辑
│ ├── agent_client.py # AI Agent 客户端通信
│ ├── evaluator.py # 综合评测逻辑(关键词 + LLM)
│ └── llm_evaluator.py # 大模型语义评测模块
├── testcases/ # 测试用例存储
│ └── testcases.json # 采用全局唯一 ID (UUID) 标识的用例
├── config/ # 配置文件
│ └── api_configs.json # 多套 API 地址配置
├── templates/ # Web 前端模板
│ └── index.html # GitHub 风格单页应用
├── web_app.py # Flask Web 后端
├── history.py # 测试历史持久化管理 (SQLite)
├── runner.py # 命令行测试运行器(可选)
├── report.py # HTML 报告生成模块
├── mock_agent.py # 本地 Mock 服务器(用于开发调试)
└── requirements.txt # 项目依赖
- 安装依赖:
pip install -r requirements.txt- 启动 Mock Agent (可选):
python mock_agent.py- 启动 Web 平台:
python web_app.py访问地址: http://localhost:8080
用例存储在 testcases/testcases.json 中,建议通过 Web 界面进行增删改查。系统已引入 UUID 机制,确保跨分类的用例 ID 绝对唯一,避免勾选冲突。
- 后端: Python, Flask, SQLite
- 前端: HTML5, CSS3 (GitHub Primer Style), Vanilla JS
- 评测: LLM (OpenAI 兼容接口), Regex