Skip to content

kangpc/AI-Gen-testcase

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AIcase - AI驱动的软件测试用例生成系统

项目简介

AIcase 是一个基于人工智能的软件测试用例自动生成系统,旨在通过集成GPT API和自定义AI模型,帮助测试工程师高效生成高质量的测试用例。系统支持多种测试用例设计方法,并提供智能化的用例配置和优化建议。

核心特性

🚀 智能化测试用例生成

  • GPT API集成:基于大语言模型自动理解需求并生成测试用例
  • 多种测试方法支持:等价类、边界值、判定表、正交试验、因果图等10种经典测试设计方法
  • 分层处理架构:需求分解、精简、忠诚度验证、格式化等多层优化

🧠 AI模型优化

  • 自定义神经网络:基于PyTorch的yiyan模型,用于测试配置优化
  • 智能推荐系统:根据项目特征自动推荐最佳测试用例配置
  • 持续学习机制:通过用户评分不断优化模型性能

📊 全面的项目管理

  • 项目生命周期管理:从需求录入到测试用例输出的完整流程
  • 需求规格说明书(SRS)管理:支持需求的结构化管理和版本控制
  • 用例配置可视化:直观的配置界面,支持个性化定制

📈 结果输出与分析

  • Excel导出功能:一键导出结构化的测试用例文档
  • 质量评估机制:内置评分系统,持续改进生成质量
  • 缓存机制:支持结果缓存,提高响应速度

技术架构

后端技术栈

  • 框架:Django 3.2.13
  • 数据库:SQLite(开发环境)
  • AI框架:PyTorch
  • API集成:GPT API(yiyan.cn)
  • 数据处理:pandas、openpyxl

前端技术栈

  • 框架:Vue.js 3.2.13
  • UI组件库:Element Plus 2.4.4
  • 路由管理:Vue Router 4.0.3
  • HTTP客户端:Axios 1.6.2
  • 样式预处理:Sass

核心模块

1. 分层处理引擎 (Ceng.py)

class Ceng():
    def __init__(self, gpt_api, content, case, id):
        # 初始化处理层级
    
    def 需求层(self):          # 基础需求解析
    def 原文分解层(self):      # 长文本智能分解
    def 要求精简层(self):      # 冗余信息过滤
    def 要求忠诚层(self):      # 原文忠实度验证
    def 要求格式层(self):      # 标准化格式输出
    def 算法层(self, data):    # 算法辅助生成

2. AI预测模型 (views_AI.py)

class yiyan(nn.Module):
    def __init__(self, input_features=3, hidden_features=16, output_features=10):
        # 自定义神经网络架构
        # 输入:项目特征向量
        # 输出:测试配置推荐

3. 数据模型 (models.py)

  • DB_project:项目信息管理
  • DB_srs:需求规格说明书
  • DB_mock:缓存管理
  • DB_AI:AI训练数据

安装部署

环境要求

  • Python 3.8+
  • Node.js 14+
  • npm 6+

后端部署

  1. 克隆项目
git clone <repository-url>
cd AIcase
  1. 安装Python依赖
pip install django==3.2.13
pip install django-cors-headers
pip install torch
pip install openpyxl
pip install requests
  1. 数据库初始化
python manage.py makemigrations
python manage.py migrate
  1. 启动Django服务
python manage.py runserver 0.0.0.0:8000

前端部署

  1. 进入前端目录
cd v_project
  1. 安装依赖
npm install
  1. 开发模式运行
npm run serve
  1. 生产环境构建
npm run build

GPT API配置

myapp/GPT_api.py 中配置您的GPT API凭据:

# 替换为您的实际凭据
gpt_api = GPT_api('your_username', 'your_password')

使用指南

1. 创建新项目

  1. 访问系统主页
  2. 点击"新建项目"
  3. 输入项目名称和描述
  4. 系统自动初始化10种测试方法配置

2. 配置需求

  1. 进入项目详情页面
  2. 在"需求配置"标签下添加SRS
  3. 输入具体需求描述
  4. 选择适用的测试方法

3. 自定义测试配置

  1. 切换到"用例配置"标签
  2. 为每种测试方法选择处理层级
  3. 配置算法辅助参数(如边界值范围)
  4. 使用"AI帮选"获取智能推荐

4. 生成测试用例

  1. 进入"开始生成"标签
  2. 点击"开始生成"按钮
  3. 系统调用GPT API生成初步用例
  4. 通过分层处理优化结果质量

5. 质量评估与优化

  1. 对生成结果进行1-5星评分
  2. 系统收集评分数据训练AI模型
  3. 后续生成会基于学习结果优化

6. 导出结果

  1. 点击"导出Excel"按钮
  2. 系统生成包含所有测试用例的Excel文件
  3. 文件包含GPT生成用例和算法层用例两部分

API接口文档

项目管理接口

  • GET /get_projects/ - 获取所有项目
  • POST /add_project/ - 创建新项目
  • GET /get_project/?id=<project_id> - 获取项目详情
  • POST /save_project/ - 保存项目信息

需求管理接口

  • GET /get_srs/?id=<project_id> - 获取项目需求列表
  • GET /add_srs/?id=<project_id> - 添加新需求
  • POST /save_srs/ - 保存需求信息
  • GET /del_srs/?id=<srs_id> - 删除需求

用例生成接口

  • GET /start/?id=<project_id> - 开始生成测试用例
  • POST /save_project_case_set/?id=<project_id> - 保存用例配置
  • POST /excel/ - 导出Excel文件

AI相关接口

  • GET /scoring/?id=<project_id>&score=<score> - 提交质量评分
  • GET /play_AI/?id=<project_id> - 获取AI推荐配置

系统架构图

┌─────────────────┬─────────────────┬─────────────────┐
│   前端层        │     API层       │    核心引擎层   │
├─────────────────┼─────────────────┼─────────────────┤
│ Vue.js 3        │ Django REST     │ Ceng分层处理器  │
│ Element Plus    │ CORS支持        │ GPT API集成     │
│ Vue Router      │ JSON响应        │ 算法库ALGORITHM │
│ Axios HTTP      │ Excel导出       │ 缓存机制        │
└─────────────────┼─────────────────┼─────────────────┤
                  │   数据持久层    │   AI模型层      │
                  ├─────────────────┼─────────────────┤
                  │ SQLite数据库    │ PyTorch yiyan   │
                  │ Django ORM      │ 神经网络训练    │
                  │ 模型迁移        │ 智能推荐系统    │
                  └─────────────────┴─────────────────┘

测试方法说明

支持的测试设计方法

  1. 等价类划分法:将输入域划分为若干等价类,每类选取代表性测试数据
  2. 边界值分析法:重点测试边界条件,包括上点、下点、离点
  3. 判定表法:适用于复杂逻辑条件的组合测试
  4. 正交试验法:高效覆盖多因子组合的测试场景
  5. 输出域覆盖法:确保所有可能的输出结果都被测试
  6. 错误猜测法:基于经验和直觉的补充测试
  7. 因果图法:分析输入条件和输出结果的因果关系
  8. 场景法:模拟用户实际使用场景的测试
  9. 流程图法:基于业务流程的路径测试
  10. 状态迁移法:测试系统状态转换的正确性

分层处理机制

  • 需求层:基础需求理解和用例框架生成
  • 原文分解层:长文本智能分割,提高处理效率
  • 要求精简层:去除冗余描述,突出核心要点
  • 要求忠诚层:确保生成内容忠于原始需求
  • 要求格式层:标准化输出格式,便于后续处理
  • 要求扩展层:补充遗漏的测试场景
  • 比对验证层:验证生成数据的合理性
  • 自然语境层:优化表述,提高可读性
  • 算法层:基于算法规则生成补充测试数据

贡献指南

欢迎提交Issue和Pull Request来改进系统功能。

开发规范

  • 遵循PEP 8 Python代码规范
  • 前端代码使用ESLint进行检查
  • 提交前请确保所有测试通过
  • 新功能需要添加相应的单元测试

待开发功能

  • 支持更多GPT API提供商
  • 增加测试用例执行引擎
  • 实现团队协作功能
  • 添加缺陷管理模块
  • 支持自定义测试模板

许可证

本项目采用 MIT 许可证 - 详情请查看 LICENSE 文件。

技术支持

如有问题或建议,请联系:


注意:本系统仍在持续开发中,建议在生产环境使用前进行充分测试。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published