AI 智能测试平台:自动进行需求分析 & 测试建模 & 测试用例 & 测试报告「详细介绍」

Streamlit+LLM+RAG 测试智能体平台

    • 项目简介
    • [✨ 主要功能](#✨ 主要功能)
    • [🚀 安装指南](#🚀 安装指南)
    • [💡 使用方法](#💡 使用方法)
    • [💾 数据存储](#💾 数据存储)
    • [⚙️ 配置](#⚙️ 配置)

项目简介

本项目是一个基于 Streamlit 构建的交互式 Web 应用,利用大语言模型 (LLM) 和检索增强生成 (RAG) 技术,辅助完成各种软件测试任务。用户可以输入需求描述,选择性地通过知识库和历史数据增强上下文,从而生成 需求规格说明书测试用例测试建模文档 、和 测试报告

✨ 主要功能

  • 📝 AI 生成任务:

    • 需求分析: 基于提供的需求描述,生成软件需求规格说明书 (SRS)。
    • 测试分析 (建模): 创建详细的测试建模文档。
    • 测试用例生成: 从需求描述自动生成结构化的测试用例。
    • 测试报告生成: 根据输入信息生成专业的测试报告。
  • 🔍 检索增强生成 (RAG):

    • 知识库集成: 支持上传文档来构建知识库。系统会自动解析和切分这些文档。
    • 上下文增强: 从知识库和相似的历史数据中检索相关片段,为 LLM 提供更丰富的上下文,从而提高生成内容的质量和相关性。

  • 🧠 灵活的 LLM 集成:

    • 支持多种 LLM 服务提供商:Ollama、OpenAI 以及自定义 API 端点。
    • 允许从多种预定义模型中选择,或指定自定义模型名称。
    • 可通过 UI 配置 API 端点和 API 密钥。
  • 📊 用户界面与输出:

    • 交互式 UI: 使用 Streamlit 构建,包含 AI 生成、知识库管理和模型设置等标签页。
    • 多种输出视图: 以表格、JSON 和 Markdown 格式显示生成的测试用例。
    • 导出功能: 允许将生成的需求规格说明书、测试建模文档、测试用例和测试报告下载为 Markdown 文件。
    • 知识库查看器: 浏览已上传的文档及其提取的片段。
    • 统计信息: 显示知识片段数量和历史测试用例数量等基本统计数据。

🚀 安装指南

前置条件

  • Python 3.8+
  • Ollama (推荐用于本地模型,如果使用默认设置,请先安装并运行)
  • Git

步骤

  1. 克隆仓库:

    bash 复制代码
    git clone <your-repository-url> (项目源码可联系我获取)
    cd <repository-folder-name>
  2. 创建并激活虚拟环境:

    bash 复制代码
    # Windows
    python -m venv venv
    .\venv\Scripts\activate
    
    # Linux/macOS
    python -m venv venv
    source venv/bin/activate
  3. 安装依赖:

    bash 复制代码
    pip install -r requirements.txt

    提示: 如果在国内遇到网络问题,可以尝试使用镜像源:

    bash 复制代码
    pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

💡 使用方法

  1. 确保您选择的 LLM 服务正在运行:

    • 如果使用 Ollama (默认),请确保 Ollama 应用程序正在运行。
    • 如果使用 OpenAI 或自定义 API,请确保您拥有正确的 API 端点和凭据。
  2. 运行 Streamlit 应用:

    bash 复制代码
    streamlit run rag_test_agent.py
  3. 与应用交互:

    • 📝 AI 生成标签页:
      • 输入或通过文件上传导入需求描述。

      • 可选择勾选 "使用知识库和历史用例" 复选框以启用 RAG 来增强生成效果 (影响测试用例、测试分析、需求分析和测试报告的生成)。

      • 调整生成参数,如最大用例数和温度 (创造性)。

      • 点击相应的按钮:"需求分析"、"生成测试建模"、"生成测试用例" 或 "生成测试报告"。

      • 查看并导出结果。

      • 需求分析(部分示例):


      • 测试建模(部分示例):

      • 测试用例(部分示例):

      • 测试报告(部分示例):


  • 📚 知识库管理标签页: 上传相关文档 (PDF, DOCX, TXT, MD, JSON) 来构建您的知识库。可以查看已存在的知识片段。
  • ⚙️ 模型设置标签页: 配置您想要的 LLM 提供商、模型名称、API 基础 URL 和 API 密钥 (如果需要)。默认使用 Ollama 的 qwen2.5:7b 模型,地址为 http://127.0.0.1:11434

💾 数据存储

  • 存储历史需求描述及其对应的生成测试用例。用于测试用例生成时的 RAG。
  • 存储从知识库上传文档中提取的文本片段。包含文档名称和来源页码 (针对 PDF)。用于所有生成任务的 RAG。
  • temp: 用于处理上传文件的临时目录。处理完毕后,此目录下的文件会被删除。

⚙️ 配置

所有的 LLM 配置都通过 UI 中的 "模型设置" 标签页进行管理:

  • 模型提供商 (Model Provider):ollama, openai, 或 custom 之间选择。
  • 模型名称 (Model Name): 从列表中选择一个模型 (根据提供商而定) 或输入自定义名称。
  • API 基础 URL (API Base URL): LLM API 的端点地址。为 Ollama 和 OpenAI 提供了默认值。
  • API 密钥 (API Key): OpenAI 和 自定义 API 需要此项。
相关推荐
东临碣石821 分钟前
【AI论文】BlenderFusion:基于三维场景的视觉编辑与生成式合成
人工智能
正在走向自律2 分钟前
第二章-AIGC入门-开启AIGC音频探索之旅:从入门到实践(6/36)
人工智能·aigc·音视频·语音识别·ai音乐·ai 音频·智能语音助手
Trent19858 分钟前
影楼精修-智能修图Agent
图像处理·人工智能·计算机视觉·aigc
烟锁池塘柳010 分钟前
【大模型】解码策略:Greedy Search、Beam Search、Top-k/Top-p、Temperature Sampling等
人工智能·深度学习·机器学习
盼小辉丶25 分钟前
PyTorch实战(14)——条件生成对抗网络(conditional GAN,cGAN)
人工智能·pytorch·生成对抗网络
Allen_LVyingbo1 小时前
数智读书笔记系列035《未来医疗:医疗4.0引领第四次医疗产业变革》
人工智能·经验分享·笔记·健康医疗
zzc9211 小时前
时频图数据集更正程序,去除坐标轴白边及调整对应的标签值
人工智能·深度学习·数据集·标签·时频图·更正·白边
isNotNullX1 小时前
什么是数据分析?常见方法全解析
大数据·数据库·数据仓库·人工智能·数据分析
riveting1 小时前
明远智睿H618:开启多场景智慧生活新时代
人工智能·嵌入式硬件·智能硬件·lga封装·3506
夜阑卧听风吹雨,铁马冰河入梦来2 小时前
Spring AI 阿里巴巴学习
人工智能·学习·spring