Files
test_item_gen/README.md
2026-02-04 14:42:45 +08:00

138 lines
3.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 测试专家系统
基于大模型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`
## 许可证
本项目仅供学习和研究使用。