测试工程师必备:基于Skill 快速生成批量测试数据

简介: 在日常测试工作中,造数几乎是绕不开的一个环节。 也有不少测试同学会选择直接写 SQL 插入数据,或者手动组装接口请求来完成造数。但这些方式都会存在一些问题: 手动操作效率低: 需要反复在页面执行相同的操作,尤其是涉及多个业务模块时,步骤比较繁琐。 SQL 造数维护成本高: 需要了解数据库表结构、字段约束以及表之间的关联关系,业务逻辑复杂时更容易出错。 接口造数重复性高: 需要手动准备请求参数、处理接口依赖关系等。 有没有一种更轻量的方式,可以减少这些重复工作? 我实践了一种基于 Skill 的自动化造数方案。它 可以根据接口文档、HAR 文件、CURL 命令或者 SQL 表结构,自动分析业务关

在日常测试工作中,造数几乎是绕不开的一个环节。

也有不少测试同学会选择直接写 SQL 插入数据,或者手动组装接口请求来完成造数。但这些方式都会存在一些问题:

  • 手动操作效率低: 需要反复在页面执行相同的操作,尤其是涉及多个业务模块时,步骤比较繁琐。
  • SQL 造数维护成本高: 需要了解数据库表结构、字段约束以及表之间的关联关系,业务逻辑复杂时更容易出错。
  • 接口造数重复性高: 需要手动准备请求参数、处理接口依赖关系等。

有没有一种更轻量的方式,可以减少这些重复工作?

我实践了一种基于 Skill 的自动化造数方案。它可以根据接口文档、HAR 文件、CURL 命令或者 SQL 表结构,自动分析业务关系,并生成 Postman 请求、SQL 脚本或 Python 造数脚本,帮助测试人员更快地完成测试数据准备。

下面结合几个实际场景,看看具体怎么使用。

先了解一下这个造数 Skill

这个 Skill 的核心思路是:将已有的接口信息或数据库结构作为输入,让 AI 理解业务和数据之间的关系,再根据造数需求生成对应的执行文件。

目前支持四种输入方式:

使用方式

一、基于接口文档生成测试数据

1. 执行 Skill

首先准备好需要使用的接口文档,然后在对话框中输入:

/seed-test-data @接口文档

Skill 会读取接口文档,分析接口定义、请求参数以及接口之间可能存在的业务依赖关系。

2. 根据实际需求回答造数问题

完成接口分析后,Skill 会进一步询问造数需求,主要涉及四个方面:

① 造数范围

通常有两种选择:

  • 单接口造数:针对某一个接口独立生成测试数据。
  • 接口串联造数:按照业务流程依次调用多个接口,生成一套完整的关联数据。

② 数据画像

主要用于指定希望生成哪一类测试数据:

  • 正常数据:满足业务规则和字段约束的数据。
  • 边界数据:针对最大值、最小值、长度限制等边界条件生成数据。
  • 异常数据:构造缺失字段、非法格式、无效参数等异常场景。

不同的数据画像可以对应不同的测试目的,可以根据当前测试任务选择。

③ 生成数量

根据实际测试需求指定数据量,例如 5 条、10 条或者更多。

④ 产物格式

目前支持三种主要产物:

1. Postman Collection

生成可以导入 Postman 或 ApiPost 的请求集合,适合单接口造数,可以直接调整参数并手动执行。

  • Excel 数据表

将生成的数据整理成 Excel 文件,不同业务数据可以放在不同 Sheet 中,比较适合手工测试使用,也可以作为性能测试的数据准备来源。

  • Python 脚本

生成可执行的 Python 造数脚本,支持按照预设业务顺序调用接口,并处理接口之间的数据依赖。对于需要批量生成关联数据的场景,这种方式更加方便。

3. 查看生成结果

完成上述配置后,Skill 就会根据需求生成对应文件。

本次主要生成了 Excel 数据表和 Python 造数脚本。

Excel 数据表

打开生成的 Excel,可以看到不同业务对象分别放在独立的 Sheet 中。

Python 造数脚本

除了 Excel,还会生成一份 Python 脚本。

脚本中包含接口调用逻辑、参数组装以及随机数据生成逻辑,可以根据预设的业务顺序完成数据构造。

如果有个性化的造数需求,也可以直接查看源码,了解具体的参数生成和接口调用逻辑,再根据项目实际情况修改。

另外,接口调用通常需要配置鉴权信息,例如 Cookie、Token,以及不同环境下的接口地址。

因此,Skill 还会配套生成 .env 文件,用于统一管理这些环境变量。

将实际使用的接口地址和鉴权参数填入对应配置项,就可以为脚本执行做好准备。

4. 执行造数与数据回滚

文件准备完成后,就可以执行 Python 脚本了。

这里提供了两个主要命令:

  • seed:执行造数任务,按照预设流程调用接口并创建测试数据。
  • rollback:执行数据回滚,清理本次造数创建的数据。

需要注意,回滚功能依赖接口文档中是否提供了对应的删除接口。如果没有可用的删除接口,就无法自动生成完整的接口回滚逻辑,需要根据实际情况补充数据清理方案。

执行造数命令后,可以看到脚本按照预设流程依次调用接口。

再到业务系统中检查一下,可以看到对应的公寓、房间、租客等数据已经成功创建。

测试完成后,如果需要清理本次创建的数据,再执行对应的 rollback 命令即可。

这样,一套完整的测试数据就完成了从生成、创建到清理的过程。

二、没有接口文档如何造数?

实际项目中,并不是所有接口都有完整的接口文档。

有时候,测试人员只能通过浏览器操作业务功能,再借助抓包工具获取接口请求信息。

针对这种情况,也可以使用 CURL或HAR 文件作为输入源。

方式1:通过 CURL 命令快速生成造数脚本

如果只需要使用某几个接口,也可以直接通过 CURL 命令作为输入

1、获取 CURL 命令

打开浏览器开发者工具,进入 Network 面板。

操作需要造数的业务功能,找到对应的接口请求,右键选择:

这样就可以获取完整的 CURL 请求信息,通常包含请求 URL、请求方法、请求头和请求参数等内容。

2、执行 Skill

将复制的 CURL 命令提供给 Skill:

Skill 会根据请求信息分析接口参数,并进一步询问造数范围、数据画像、生成数量和产物格式等需求。

完成配置后,就可以生成对应的造数脚本。

方式2:使用 HAR 文件造数

HAR(HTTP Archive)是一种记录 HTTP 请求和响应信息的文件格式,通常可以从浏览器开发者工具中导出,里面包含请求地址、请求方法、请求头、请求参数等信息。

1、准备 HAR 文件

打开浏览器开发者工具,在 Network 面板中操作需要造数的业务功能,记录相关接口请求,然后将请求数据导出为 HAR 文件。

2、执行 Skill 并生成脚本

准备好 HAR 文件后,直接将文件作为输入提供给 Skill。

后续流程与接口文档造数基本一致:

  • 分析 HAR 文件中的接口请求。
  • 确认造数范围和业务数据画像。
  • 设置需要生成的数据数量。
  • 选择最终产物格式。

完成问题答复后,Skill 就会根据抓包信息生成对应的造数文件。

这种方式的好处是,不需要提前整理完整的接口文档,只要能够获取到相关请求信息,就可以尝试构建造数流程。

三、基于 SQL 表结构直接生成造数 SQL

前面介绍的三种方式,本质上都是通过接口完成测试数据构造。

如果某些测试场景不需要调用业务接口,而是希望直接向数据库中插入测试数据,也可以使用 SQL 表结构作为输入。

1、准备数据库表结构

首先准备需要造数的数据库表结构 SQL 文件。

建议除了提供建表语句,还要补充表与表之间的关联关系,以及必要的字段约束和业务规则。

这些信息越完整,生成的数据就越容易满足实际业务要求。

2、执行 Skill

准备好 SQL 文件后,输入:

3、配置造数需求

与前面的案例类似,Skill 会依次询问造数需求。

4、查看生成结果

完成配置后,Skill 会生成两个 SQL 文件:

造数 SQL

用于向数据库中插入测试数据,包含对应的字段和值。

回滚 SQL

用于删除本次生成的测试数据,方便测试完成后进行数据清理。

这里需要特别注意:SQL 造数虽然比较直接,但一定要确认数据表的外键约束、唯一性约束、必填字段以及关联关系,避免因为数据不完整导致执行失败,或者影响已有业务数据。

另外,执行回滚 SQL 前也应确认删除范围,避免误删其他测试数据。

目录
相关文章
|
14天前
|
Linux 开发工具 iOS开发
Codex保姆级教程(下载+安装+登录+使用,含所有版本,2026最新)
Codex是OpenAI推出的开源AI编程智能体,本地运行,可理解整个代码库,支持自然语言指令改代码、执行命令、跑测试、修Bug,兼容Win/macOS/Linux。(239字)
5961 44
|
14天前
|
JavaScript API iOS开发
DeepSeek Harness下载、安装、配置一篇搞定(2026整理,送常用插件)
DeepSeek Harness(DSH)是DeepSeek于2026年开源的MIT协议AI Agent框架,支持插件化组装模型、工具、沙箱与UI,兼容主流大模型。本文提供免Node.js的桌面端安装包(Win/macOS),含详细图文教程及热门插件推荐。
5033 60
|
9天前
|
Linux 开发工具 iOS开发
2026最新codex下载安装保姆级使用教程(下载+安装+登录+使用,含所有历史版本)
本文详解OpenAI Codex国内快速上手指南:提供Win/macOS/Linux全平台免安装包、npm/Homebrew等多方式安装、账号/API Key双登录、简体中文切换,覆盖下载、安装、汉化、使用及高频避坑(如微软商店失败、npm超时等),10分钟即可跑通。
2384 6
|
6天前
|
人工智能 安全 API
DeepSeek Harness下载、安装、配置一篇搞定(2026整理,送常用插件)
DeepSeek Harness(dsh)是DeepSeek AI于2026年开源的轻量级Agent运行框架,基于Cordis内核,践行“一切皆插件”理念。支持Web/桌面双端,开箱即用;内置多模型接入、丰富插件生态(超3.5万),适配编程、办公、创作等场景。(239字)
1484 0
|
9天前
|
云安全 人工智能 安全
|
2天前
|
云安全 人工智能 安全
|
8天前
|
人工智能 并行计算 调度
本地 AI 一键部署工具 LocModel:Windows 端集成画图、视频生成、Agent 的开源模型运行方案
LocModel 是专为 Windows 设计的一站式本地 AI 工具,支持零配置启动、自动硬件检测、GGUF 模型一键加载、文生图/视频生成及 Agent 自动化任务。适配 8G 显存,内置显存分片调度,轻松实现 AI 漫剧批量创作与离线大模型调用。(239 字)