change gitignore
This commit is contained in:
137
README.md
Normal file
137
README.md
Normal file
@@ -0,0 +1,137 @@
|
||||
# 测试专家系统
|
||||
|
||||
基于大模型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`
|
||||
|
||||
## 许可证
|
||||
|
||||
本项目仅供学习和研究使用。
|
||||
|
||||
Reference in New Issue
Block a user