一、什么是数据驱动测试
DDT:data drive test
准备一组数据,通过写一个测试用例,不同的数据进行迭代。
二、csv文件承载数据
CSV:Comma Separated Values
csv文件就是逗号分隔的文本文件。
使用python中的csv模块来处理csv文件
结合pygtest的参数化处理方式来实现ddt
三、csv数据驱动示例
首先创建一个csv的file:
zhangsan,lisi,wangwu
tom,rose,lili
然后创建一个test_csv.py模块
# -*- coding: utf-8 -*-
# @Time: 2022/5/29 4:20 下午
# @Author: wcystart
# @File: test_csv.py
# @description:
import pytest
import csv
def get_data():
with open("test.csv") as f:
lst = csv.reader(f)
my_data = []
for row in lst:
my_data.extend(row)
return my_data
@pytest.mark.parametrize('name', get_data())
def test01(name):
print(name)
if __name__ == '__main__':
pytest.main(['-vs', 'test_csv.py'])
运行结果;
test_csv.py::test01[zhangsan] zhangsan
PASSED
test_csv.py::test01[lisi] lisi
PASSED
test_csv.py::test01[wangwu] wangwu
PASSED
test_csv.py::test01[tom] tom
PASSED
test_csv.py::test01[rose] rose
PASSED
test_csv.py::test01[lili] lili
PASSED