测试专家系统
基于大模型AI技术的自动化测试项和测试用例生成系统。
功能特性
- 📄 文档解析: 自动解析JSON格式的软件使用说明书,提取功能点和操作步骤
- 🤖 智能生成: 基于大模型API,为每个功能点生成专业的测试项和测试用例
- 📊 多格式输出: 支持JSON、Markdown、Excel多种格式导出
- 🔧 Prompt优化: 支持自定义和优化测试生成Prompt模板
- 🌐 多API支持: 支持DeepSeek、通义千问、OpenAI等多种大模型API
安装
-
确保已安装Python 3.8+
-
安装依赖:
pip install -r requirements.txt
配置
1. API配置
编辑 config/api_config.yaml,填入您的API密钥:
providers:
deepseek:
api_key: "your-api-key-here"
# ...
qianwen:
api_key: "your-api-key-here"
# ...
openai:
api_key: "your-api-key-here"
# ...
或者通过环境变量设置:
export DEEPSEEK_API_KEY="your-api-key"
export QIANWEN_API_KEY="your-api-key"
export OPENAI_API_KEY="your-api-key"
2. Prompt模板(可选)
系统已包含默认的Prompt模板,位于 config/default_prompt.yaml。您可以根据需要修改这些模板以优化生成效果。
使用
方式一:Web界面(推荐)
- 启动Streamlit应用:
streamlit run app.py
-
在浏览器中打开显示的URL(通常是 http://localhost:8501)
-
使用流程:
- 配置页面: 设置API密钥和选择模型
- 生成测试页面: 上传JSON文档,选择功能点,生成测试
- 结果页面: 预览和下载生成的结果
方式二:命令行(文档转换)
使用 process_doc_file.py 将Word文档转换为JSON:
python process_doc_file.py [输入文件.docx] [输出文件.json]
项目结构
test_item_gen/
├── app.py # Streamlit主应用
├── process_doc_file.py # Word文档转JSON工具
├── requirements.txt # 依赖列表
├── config/
│ ├── api_config.yaml # API配置
│ └── default_prompt.yaml # 默认Prompt模板
├── modules/
│ ├── __init__.py
│ ├── json_parser.py # JSON解析模块
│ ├── api_client.py # 大模型API客户端
│ ├── prompt_manager.py # Prompt管理模块
│ ├── test_generator.py # 测试生成引擎
│ └── output_formatter.py # 多格式输出模块
└── templates/ # 自定义Prompt模板目录
测试用例格式
生成的测试用例包含以下信息:
- 测试项ID: 自动生成的唯一标识
- 测试项名称: 测试项的描述
- 所属模块: 功能所属的模块
- 前置条件: 执行测试前需要满足的条件
- 测试步骤: 详细的测试操作步骤
- 预期结果: 测试应该达到的结果
- 优先级: 高/中/低
- 测试类型: 功能测试/性能测试/安全测试等
注意事项
- API密钥安全: 请勿将包含API密钥的配置文件提交到版本控制系统
- API调用费用: 使用大模型API会产生费用,请注意控制调用次数
- Prompt优化: 根据实际需求调整Prompt模板可以显著提升生成质量
- 文档格式: 输入的JSON文档需要符合特定的格式结构
故障排除
API调用失败
- 检查API密钥是否正确配置
- 确认网络连接正常
- 查看API提供商的文档,确认API格式是否匹配
无法识别功能点
- 检查JSON文档格式是否正确
- 确认文档中包含清晰的功能描述
- 可以手动调整
modules/json_parser.py中的功能点识别逻辑
Excel导出失败
- 确保已安装
openpyxl:pip install openpyxl
许可证
本项目仅供学习和研究使用。
Description
Languages
Python
100%