作者:数据测试员
---
前言
大家好,我是数据测试员。做数据测试3年,数据驱动是提高测试覆盖率的关键方法。今天分享多数据源驱动的实战技巧。
---
一、数据驱动概念
什么是数据驱动?
将测试逻辑与测试数据分离:
---
二、Excel数据驱动
Excel数据格式
`
| 用户名 | 密码 | 预期状态 |
|--------|------|----------|
| test1 | pass1 | success |
| test2 | wrong | failure |
| empty | pass | error |
`
Python读取Excel
`python
import pandas as pd
def load_excel_data():
df = pd.read_excel("test_data.xlsx")
return df.to_dict("records")
@pytest.mark.parametrize("data", load_excel_data())
def test_login(data):
result = login(data["用户名"], data["密码"])
assert result.status == data["预期状态"]
`
---
三、YAML数据驱动
YAML数据格式
`yaml
test_cases:
- name: 正常登录
username: testuser
password: password123
expected: success
- name: 错误密码
username: testuser
password: wrongpass
expected: failure
`
---
四、JSON数据驱动
JSON数据格式
`json
[
{"username": "user1", "password": "pass1", "expected": "success"},
{"username": "user2", "password": "pass2", "expected": "success"}
]
`
---
五、RunnerGo数据驱动
RunnerGo支持CSV/JSON数据文件导入:
---
总结
数据驱动要点:
| 数据源 | 优点 | 适用场景 |
|--------|------|----------|
| Excel | 可视化编辑 | 业务数据 |
| YAML | 层次清晰 | 配置数据 |
| JSON | 标准格式 | API数据 |
---
下期预告:GitLab CI测试集成实战 - 从代码提交到测试报告全流程
作者:数据测试员,3年数据测试经验