Files

138 lines
3.8 KiB
Markdown
Raw Permalink Normal View History

2026-02-04 14:42:45 +08:00
# 测试专家系统
基于大模型AI技术的自动化测试项和测试用例生成系统。
## 功能特性
- 📄 **文档解析**: 自动解析JSON格式的软件使用说明书提取功能点和操作步骤
- 🤖 **智能生成**: 基于大模型API为每个功能点生成专业的测试项和测试用例
- 📊 **多格式输出**: 支持JSON、Markdown、Excel多种格式导出
- 🔧 **Prompt优化**: 支持自定义和优化测试生成Prompt模板
- 🌐 **多API支持**: 支持DeepSeek、通义千问、OpenAI等多种大模型API
## 安装
1. 确保已安装Python 3.8+
2. 安装依赖:
```bash
pip install -r requirements.txt
```
## 配置
### 1. API配置
编辑 `config/api_config.yaml`填入您的API密钥
```yaml
providers:
deepseek:
api_key: "your-api-key-here"
# ...
qianwen:
api_key: "your-api-key-here"
# ...
openai:
api_key: "your-api-key-here"
# ...
```
或者通过环境变量设置:
```bash
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界面推荐
1. 启动Streamlit应用
```bash
streamlit run app.py
```
2. 在浏览器中打开显示的URL通常是 http://localhost:8501
3. 使用流程:
- **配置页面**: 设置API密钥和选择模型
- **生成测试页面**: 上传JSON文档选择功能点生成测试
- **结果页面**: 预览和下载生成的结果
### 方式二:命令行(文档转换)
使用 `process_doc_file.py` 将Word文档转换为JSON
```bash
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**: 自动生成的唯一标识
- **测试项名称**: 测试项的描述
- **所属模块**: 功能所属的模块
- **前置条件**: 执行测试前需要满足的条件
- **测试步骤**: 详细的测试操作步骤
- **预期结果**: 测试应该达到的结果
- **优先级**: 高/中/低
- **测试类型**: 功能测试/性能测试/安全测试等
## 注意事项
1. **API密钥安全**: 请勿将包含API密钥的配置文件提交到版本控制系统
2. **API调用费用**: 使用大模型API会产生费用请注意控制调用次数
3. **Prompt优化**: 根据实际需求调整Prompt模板可以显著提升生成质量
4. **文档格式**: 输入的JSON文档需要符合特定的格式结构
## 故障排除
### API调用失败
- 检查API密钥是否正确配置
- 确认网络连接正常
- 查看API提供商的文档确认API格式是否匹配
### 无法识别功能点
- 检查JSON文档格式是否正确
- 确认文档中包含清晰的功能描述
- 可以手动调整 `modules/json_parser.py` 中的功能点识别逻辑
### Excel导出失败
- 确保已安装 `openpyxl`: `pip install openpyxl`
## 许可证
本项目仅供学习和研究使用。