当前位置: 首页 > article >正文

Deepseek API+Python 测试用例一键生成与导出 V1.0.3

** 功能详解**

随着软件测试复杂度的不断提升,测试工程师需要更高效的方法来设计高覆盖率的测试用例。Deepseek API+Python 测试用例生成工具在 V1.0.3 版本中,新增了多个功能点,优化了提示词模板,并增强了对文档和接口测试用例的支持,极大提升了测试用例设计的智能化和易用性。

本文将详细介绍 V1.0.3 的新增功能、优化点,以及如何使用这些功能进行测试用例设计。整体界面如下图所示。

在这里插入图片描述


1. 新增功能点

在这里插入图片描述

1.1 新增提示词模式

在 V1.0.3 中,新增了提示词模式,支持以下两种枚举值:

  1. 文档模式:提示词以需求分析为主,适合基于需求文档设计测试用例。
  2. 参数输入模式:提示词以参数维度生成,适合基于参数组合生成测试用例。
文档模式

当选择 文档模式 时,生成的提示词将包含需求分析的指导模板,帮助测试工程师提取关键要素。如下所示:

需求分析指南:
1. 识别功能边界(系统做什么/不做什么)
2. 提取业务规则(计算规则、验证规则)
3. 定义用户角色及其权限
4. 梳理关键业务流程(正常流、备选流、异常流)
5. 标记敏感操作(审计日志、权限校验点)
参数输入模式

当选择 参数输入模式 时,生成的提示词会根据用户输入的参数维度,结合常见的测试用例设计方法生成。示例如下:

关键步骤:
1. 构建正交表
2. 优化组合数量
3. 验证两两覆盖

参数维度:
▸ 支付方式:银联支付, 支付宝支付, 微信支付
▸ 金额范围:<100, 100-1000, >1000
▸ 货币类型:CNY, USD

1.2 新增功能模式字段

新增 功能模式字段,支持以下两种模式:

  1. 功能测试用例(默认选项)
  2. 接口测试用例
功能测试用例

当选择功能测试用例时,提示词会自动标注为功能测试,生成的测试用例将专注于功能性验证,示例如下:

Role: 测试用例设计专家(功能测试用例)
接口测试用例

当选择接口测试用例时,提示词会包含接口测试相关信息,并根据用户提供的接口文档(如 .xlsx 文件)生成高覆盖率的接口测试用例。


1.3 新增用例设计方法

支持 八种常用测试用例设计方法 的多选功能,选中后提示词信息中将包含对应方法的指导内容。这八种方法包括:

  1. 正交分析法
  2. 边界值分析
  3. 等价类划分
  4. 状态转换法
  5. 决策表法
  6. 错误推测法
  7. 场景法
  8. 因果图法
选中方法的提示词

示例:当选择正交分析法和边界值分析时,提示词中会增加如下内容:

用例设计方法:
1. 正交分析法:使用正交表生成参数组合,覆盖所有参数对的交互组合。
2. 边界值分析:针对数值型参数测试极值:最小值、略高于最小值、正常值、略低于最大值、最大值。

1.4 默认提示词优化

优化后的默认提示词如下:

Role: 测试用例设计专家

Rules:

设计目标:
通过正交分析法实现:
使用正交表生成参数组合,覆盖所有参数对的交互组合

需求分析指南:
1. 识别功能边界(系统做什么/不做什么)
2. 提取业务规则(计算规则、验证规则)
3. 定义用户角色及其权限
4. 梳理关键业务流程(正常流、备选流、异常流)
5. 标记敏感操作(审计日志、权限校验点)

用例数量:尽可能多,不少于15条
输出要求:
1. 格式:结构化JSON
2. 字段:
   - 用例编号:<模块缩写>-<3位序号>
   - 用例标题:<测试目标> [正例/反例]
   - 前置条件:初始化状态描述
   - 测试数据:参数值的具体组合
   - 操作步骤:带编号的明确步骤
   - 预期结果:可验证的断言
   - 优先级:P0(冒烟)/P1(核心)/P2(次要)
3. 示例:
[
    {
        "用例编号": "PAY-001",
        "用例标题": "支付功能 [正例]",
        "前置条件": "用户已登录,购物车内已有商品",
        "测试数据": {
            "支付方式": "支付宝支付",
            "金额范围": "100-1000",
            "货币类型": "CNY"
        },
        "操作步骤": [
            "1. 打开购物车页面",
            "2. 点击结算按钮",
            "3. 选择支付方式为支付宝支付",
            "4. 确认支付金额为100-1000元人民币",
            "5. 点击支付按钮"
        ],
        "预期结果": "支付成功,页面显示支付完成信息,余额扣减正确",
        "优先级": "P1"
    }
]

质量标准:
- 参数对组合覆盖率 ≥95%
- 正向场景用例占比60%
- 异常场景用例占比30%
- 边界场景用例占比10%

生成步骤:
1. 参数建模 → 2. 场景分析 → 3. 用例生成 → 4. 交叉校验

1.5 增强文档读取功能

新增对 .txt.xlsx 文档的支持:

  1. 读取 .txt 文件

    • 文档内容直接展示在预览文本框中,不进行数据预清洗。
    • 适用于直接查看需求文档内容。
      在这里插入图片描述
      生成的JSON结构化用例支持导出为JSON和XLSX格式。
      在这里插入图片描述
  2. 读取 .xlsx 文件

    • 当前主要用于生成接口测试用例。
    • 功能模式需选择 接口测试用例
    • 大模型依据 .xlsx 中的接口信息生成测试用例,输出结果为 JSON 格式。

2. 核心代码实现

以下是新增功能的核心代码实现,展示了如何处理提示词模式、功能模式、用例设计方法,以及文档读取功能:

2.1 提示词模式处理

2.1.1 提示词生成逻辑优化

新增了以下核心功能:

  1. 支持多种输入模式

    • 显式参数模式:基于用户提供的参数维度生成提示词。
    • 需求文档模式:基于需求文档生成需求分析指南。
    • 默认模式:当未提供明确输入时,生成通用的需求分析指南。
  2. 新增功能类型字段

    • 支持选择用例类型(功能测试用例、接口测试用例等)。
    • 在提示词中自动添加用例类型信息。
  3. 支持多种测试用例设计方法

    • 内置八种常用测试方法(正交分析法、边界值分析、等价类划分等)。
    • 可根据选择的设计方法,动态生成对应的提示内容。
  4. 优化生成步骤与输出格式

    • 统一输出格式为结构化 JSON。
    • 提供清晰的生成步骤和示例用例,便于直接使用。

2.2 提示词生成逻辑详解

以下是改进后的提示词生成函数,展示了如何根据不同输入模式和设计方法动态生成提示词。

核心代码

def generate_testcase_prompt(params=None, method="正交分析法", func_type=None):
    """
    生成测试用例设计提示词的智能函数

    参数:
    params : dict/list - 参数维度字典或需求文档类型
    method : str - 测试设计方法(默认正交分析法)
    func_type : str - 功能类型(如功能测试用例或接口测试用例)

    返回:
    str - 结构化提示词模板
    """
    # ========== 参数处理模块 ==========
    parameters = ""
    
    # 功能类型信息
    if func_type:
        parameters += f"输出用例类型:

http://www.kler.cn/a/600587.html

相关文章:

  • Julia语言的二进制与编码
  • 画秒杀系统流程图
  • 中级消防设施操作员(维保)考试的重点内容有哪些?
  • jeecgboot-vue3使用a-select placeholder不显示
  • 【AI神经网络】深度神经网络(DNN)技术解析:从原理到实践
  • 【动态规划】-- 第N个泰波拉契数
  • Redmi Note 11 T pro + 刷入 LinegaOs 22.1 记录 手机已经解锁bl.
  • 基于web的家政服务网站
  • 记一次线上程序宕机问题分析【写 GC 日志导致进程挂起】
  • 【Linux线程】——线程同步线程互斥
  • Doris通过时间字段,按照周分组统计的sql
  • 23种设计模式-解释器(Interpreter)设计模式
  • 响应式 Web 设计:HTML 与 CSS 协同学习的进度(二)
  • 基于Logisim的汉字显示模拟实验
  • pikachu靶场实战记录
  • 目标检测20年(二)
  • uv包简单使用案例
  • MySQL - 索引【index】
  • 如何设计系统扩展性以应对业务增长
  • SAP-ABAP:SAP数据集成全场景技术指南(BAPI、RFC、IDOC、BATCHJOB、ODATA、WEBSERVICE):从实时交互到批量处理