Day 10:数据驱动测试

适用人群:想用同一套用例测试多组数据

预计耗时:10 分钟

目标:学会业务数据工作表、数据区间控制


什么是数据驱动

同一个测试步骤,用不同的输入数据反复执行。

比如注册功能,用 3 组不同的用户名密码分别测试。

今天用到的文件

--------------------- -------------------------
`day10_step.xlsx` 定义 1 个用例 + 4 步步骤(填写表单)
`day10_data.xlsx` 定义全局变量 + 业务数据工作表(3 行数据)

data.xlsx 结构

data.xlsx 包含一个业务数据工作表「数据驱动」,3 行测试数据:

----------- ---------------- -----------
user1 user1@test.com pass1
user2 user2@test.com pass2
user3 user3@test.com pass3

step.xlsx 的 4 个步骤

----- --------------------------------- -----------------
1 `navigateTo(...)` 打开 formTest 表单页
2 `input(@username)` → Username 用当前行数据填入用户名
3 `input(@email)` → Email 用当前行数据填入邮箱
4 `input(@password)` → Password 用当前行数据填入密码

上传到系统后,点击"加载数据"即可开始:

-------------- -------------
**全局变量** 无(无需全局变量)
**用例配置** 显示数据区间 1-3
**步骤定义** 显示 4 个步骤
**业务数据** 显示 3 行测试数据

*全局变量:为空(本用例无需全局变量)*

*用例配置:数据区间设为 1-3*

*步骤定义:4 个步骤引用 @username / @email / @password*

*业务数据:3 行测试数据*

*日志:加载完成提示*

*配置行:step 和 data 文件路径*


数据区间控制

用例配置的数据区间列控制执行哪些行:

-------- -------------
执行所有行
1-3 执行第 1 到 3 行
2 只执行第 2 行

目前设置的是 1-3,执行第 1-3 行。

执行过程

点击执行后,工具会:

  1. 找到数据工作表

  2. 读取第 1-3 行数据

  3. 对每行数据执行一遍用例(共 3 次)

  4. 每次执行时,行数据会注入到全局变量中

步骤中可以用 @username 等引用当前行的数据。

执行完成后自动生成 HTML 测试报告,记录每次迭代的执行结果。报告位于 `report/report_20260724_133216.html`。复制到项目 `report` 目录即可查看详细结果。

*测试报告:记录每步执行结果和截图*


动手练习

  1. 把数据区间改成 2,只执行第 2 行

  2. 在 data.xlsx 中新增第 4 行数据

  3. 在步骤中添加一个断言


下一篇预告:Day 11 --- 流程控制

相关推荐
wuhuhuan5 天前
Day18_参数化实战
playwright
久久学姐14 天前
Python+Playwright+Pytest+BDD,用FSM打造高效测试框架
python·pytest·bdd·playwright·fsm
ji_shuke18 天前
从零深入:基于 Playwright + Pytest + Allure 的企业级 Web 端到端自动化测试框架实战
前端·自动化测试·docker·jenkins·pytest·allure·playwright
ji_shuke18 天前
Playwright 从零到 CI 实战:基于 TypeScript 的端到端测试完整指南
javascript·ci/cd·typescript·playwright
水中加点糖22 天前
Java中使用远程PlayWright进行网页接口测试(附Docker部署方式)
java·docker·web测试·devtools·playwright·ai自动化测试
wuhuhuan1 个月前
Day 5:元素操作进阶
playwright
wuhuhuan1 个月前
Day 3:定位策略进阶
playwright
深蓝电商API2 个月前
移动端浏览器自动化:Playwright for Android 实战
爬虫·playwright
wuhuhuan2 个月前
playwright-getByAltText
ui·playwright