Dify+Ollama测试用例自动生成工具
·
基于 Dify(一站式大模型应用开发平台) 快速搭建一个可视化、低代码的测试用例自动生成工具,无需复杂的底层代码开发,就能实现根据需求描述自动生成结构化、可落地的测试用例,适配不同模块/功能的测试场景。
实现方案(低代码+可视化)
Dify的核心优势是「可视化编排+内置RAG+多模型适配」,无需编写大量Python代码即可快速落地测试用例生成工具,以下是完整的搭建步骤(兼容本地Ollama模型/云端大模型)。
一、前置准备
1. Dify环境部署/注册
2. 模型配置(对接Ollama/OpenAI)
Dify支持对接本地Ollama或云端大模型,这里以本地Ollama(Llama3) 为例(数据不联网):
- 登录Dify后,进入「设置」→「模型配置」→「自定义模型」;
- 选择「Ollama」,填写配置:
- 模型名称:
llama3:8b(和本地Ollama拉取的模型一致); - 基础URL:
http://host.docker.internal:11434(Docker部署Dify时访问本地Ollama的地址,直装Dify填http://localhost:11434); - 其他参数:温度(Temperature)设为
0.1(降低随机性,保证测试用例稳定),上下文窗口(Context Window)设为2048;
- 模型名称:
- 点击「测试连接」,提示成功后保存。
二、可视化搭建测试用例生成应用
步骤1:新建应用
- 登录Dify后,点击左侧「应用」→「新建应用」;
- 选择「对话型应用」(适合交互式生成测试用例),命名为「测试用例自动生成助手」,点击「创建」。
步骤2:设计提示词(核心)
提示词是生成高质量测试用例的关键,需明确输出格式、覆盖场景、优先级,在Dify的「提示词编排」页面配置:
- 选择「提示词节点」,替换默认内容为以下模板(AI测试专家视角,结构化输出):
角色:你是拥有10年软件测试经验的资深测试专家,精通功能测试、接口测试、边界测试、异常测试。 任务:根据用户提供的【模块名称】和【需求描述】,生成结构化、可执行的测试用例。 输出要求: 1. 严格按照以下Markdown表格格式输出,无额外冗余内容: | 用例ID | 测试模块 | 测试场景 | 详细测试步骤 | 预期结果 | 优先级 | 测试类型 | |--------|----------|----------|--------------|----------|--------|----------| | TC-{模块缩写}-001 | 模块名称 | 场景描述 | 步骤1;步骤2;步骤3 | 结果描述 | 高/中/低 | 功能/接口/边界/异常 | 2. 测试用例覆盖维度: - 正常场景:核心功能正向测试; - 异常场景:参数错误、权限不足、数据非法等; - 边界场景:数值边界、长度边界、频率边界等; - 兼容场景(可选):不同输入格式、不同操作环境。 3. 优先级规则:核心功能(高)、次要功能(中)、辅助功能(低); 4. 测试步骤需可执行,预期结果需可验证(避免模糊描述)。 用户输入: 模块名称:{{module_name}} 需求描述:{{requirement_desc}} 请生成符合要求的测试用例: - 点击「变量」按钮,添加2个输入变量(让用户可动态填写):
- 变量1:
module_name,类型「文本」,标签「模块名称」,必填; - 变量2:
requirement_desc,类型「文本域」,标签「需求描述」,必填。
- 变量1:
步骤3:配置应用交互界面
- 点击左侧「应用配置」→「交互设置」:
- 输入提示:设置为「请输入模块名称和需求描述,我会为你生成结构化测试用例」;
- 回复格式:选择「Markdown」(保证表格正常显示);
- 点击「样式设置」:可自定义应用名称、logo(可选),简化界面(隐藏多余按钮)。
步骤4:绑定模型
- 点击「模型配置」(提示词编排页面顶部);
- 选择已配置的「Ollama-llama3:8b」(或云端模型如GPT-4);
- 确认参数:温度
0.1,最大生成长度2048,点击保存。
三、测试验证与使用
1. 在线测试
- 点击页面右上角「预览」,进入应用交互界面;
- 输入示例内容:
- 模块名称:用户登录接口
- 需求描述:登录接口接收账号(字符串,长度6-20)、密码(字符串,长度8-20)参数,返回token;密码错误3次锁定账号5分钟,支持手机号/用户名两种登录方式。
- 点击「发送」,Dify会生成结构化测试用例(示例输出):
| 用例ID | 测试模块 | 测试场景 | 详细测试步骤 | 预期结果 | 优先级 | 测试类型 |
|---|---|---|---|---|---|---|
| TC-登录-001 | 用户登录接口 | 正常登录(用户名+正确密码) | 1. 调用登录接口,参数:账号=admin123,密码=12345678;2. 检查返回结果 | 返回200状态码,包含有效token,账号未锁定 | 高 | 功能 |
| TC-登录-002 | 用户登录接口 | 密码错误3次锁定账号 | 1. 连续3次调用登录接口,参数:账号=admin123,密码=错误密码;2. 第4次调用登录接口 | 第4次返回403状态码,提示“账号锁定5分钟” | 高 | 功能 |
| TC-登录-003 | 用户登录接口 | 账号长度超出边界(21位) | 1. 调用登录接口,参数:账号=123456789012345678901,密码=12345678;2. 检查返回结果 | 返回400状态码,提示“账号长度需6-20位” | 中 | 边界 |
2. 实际使用方式
- 网页端:直接在Dify预览页面使用,适合测试人员手动生成;
- API调用(集成到测试平台):Dify自动生成API接口,点击「应用配置」→「API访问」,复制API Key和调用示例(Python/Java),可集成到自研测试管理平台;
- 批量生成:若需批量处理需求文档,可结合Dify的「数据集」功能,导入需求列表批量生成(进阶功能)。
四、进阶优化(可选)
- 接入测试知识库:
- 上传公司现有测试用例模板、测试规范到Dify知识库,在提示词中加入「参考知识库中的测试规范生成用例」,让输出更贴合公司标准;
- 自定义输出格式:
- 若需要Excel/JSON格式,修改提示词模板,或在Dify中添加「输出格式化」节点,自动将Markdown表格转为Excel;
- 多场景适配:
- 添加「测试类型」下拉输入框(功能/接口/性能/安全),让用户选择生成对应类型的测试用例;
- 缺陷关联:
- 结合上一轮的私有缺陷数据,在Dify中接入缺陷知识库,生成用例时自动规避历史缺陷场景(如“避免生成已修复的登录接口参数错误用例”)。
总结
- 核心优势:基于Dify搭建测试用例生成工具,无需编写复杂代码,通过「可视化提示词编排+变量配置」即可快速落地,支持本地化Ollama模型保障数据隐私;
- 关键要点:提示词需明确结构化输出格式+测试场景覆盖+可执行性,温度参数设为
0.1保证用例稳定; - 扩展方向:可接入测试知识库、开放API接口、支持批量生成,适配企业级测试用例生成需求。
更多推荐





所有评论(0)