关于pytest结合csv模块实现csv格式的数据驱动问题


Posted in Python onMay 30, 2022

一、什么是数据驱动测试

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

到此这篇关于pytest结合csv模块实现csv格式的数据驱动的文章就介绍到这了!


Tags in this post...

Python 相关文章推荐
python 实现堆排序算法代码
Jun 05 Python
Python生成8位随机字符串的方法分析
Dec 05 Python
TensorFlow实现MLP多层感知机模型
Mar 09 Python
python中property属性的介绍及其应用详解
Aug 29 Python
python序列化与数据持久化实例详解
Dec 20 Python
python 判断txt每行内容中是否包含子串并重新写入保存的实例
Mar 12 Python
浅谈python opencv对图像颜色通道进行加减操作溢出
Jun 03 Python
在pytorch中动态调整优化器的学习率方式
Jun 24 Python
python 实现socket服务端并发的四种方式
Dec 14 Python
10个python爬虫入门基础代码实例 + 1个简单的python爬虫完整实例
Dec 16 Python
Spy++的使用方法及下载教程
Jan 29 Python
PyTorch中的torch.cat简单介绍
Mar 17 Python
Python中的协程(Coroutine)操作模块(greenlet、gevent)
May 30 #Python
Pandas实现批量拆分与合并Excel的示例代码
May 30 #Python
Python实现仓库管理系统
May 30 #Python
python单向链表实例详解
May 25 #Python
利用Python实现模拟登录知乎
May 25 #Python
python双向链表实例详解
May 25 #Python
Python实现双向链表基本操作
May 25 #Python
You might like
phpfans留言版用到的数据操作类和分页类
2007/01/04 PHP
escape unescape的php下的实现方法
2007/04/27 PHP
phpMyadmin 用户权限中英对照
2010/04/02 PHP
PHP使用Redis替代文件存储Session的方法
2017/02/15 PHP
Laravel中服务提供者和门面模式的入门介绍
2017/11/06 PHP
php屏蔽错误及提示的方法
2020/05/10 PHP
Javascript YUI 读码日记之 YAHOO.util.Dom - Part.2 0
2008/03/22 Javascript
WEB页子窗口(showModalDialog和showModelessDialog)使用说明
2009/10/25 Javascript
js解析xml字符串和xml文档实现原理及代码(针对ie与火狐)
2013/02/02 Javascript
用js的for循环获取radio选中的值
2013/10/21 Javascript
js showModalDialog 弹出对话框的简单实例(子窗体)
2014/01/07 Javascript
Angularjs 事件指令详细整理
2017/07/27 Javascript
Node.js使用Angular简单示例
2018/05/11 Javascript
JavaScript使用类似break机制中断forEach循环的方法
2018/11/13 Javascript
element-ui表格合并span-method的实现方法
2019/05/21 Javascript
NodeJs crypto加密制作token的实现代码
2019/11/15 NodeJs
PyQt5 pyqt多线程操作入门
2018/05/05 Python
pyspark.sql.DataFrame与pandas.DataFrame之间的相互转换实例
2018/08/02 Python
Python设计模式之备忘录模式原理与用法详解
2019/01/15 Python
解决Mac下使用python的坑
2019/08/13 Python
Python 生成VOC格式的标签实例
2020/03/10 Python
Python通过Pillow实现图片对比
2020/04/29 Python
Python基于argparse与ConfigParser库进行入参解析与ini parser
2021/02/02 Python
Myprotein台湾官方网站:全球领先的运动营养品牌
2018/12/10 全球购物
马来西亚在线药房:RoyalePharma
2019/12/01 全球购物
港湾网络笔试题
2014/04/19 面试题
办公室文秘岗位职责
2013/11/15 职场文书
挂牌仪式策划方案
2014/05/18 职场文书
企业优秀员工事迹材料
2014/05/28 职场文书
2014年创先争优工作总结
2014/12/11 职场文书
2015年会计工作总结范文
2015/05/26 职场文书
劳动模范获奖感言
2015/07/31 职场文书
结婚纪念日感言
2015/08/01 职场文书
Python机器学习之KNN近邻算法
2021/05/14 Python
SQL写法--行行比较
2021/08/23 SQL Server
国庆节到了,利用JS实现一个生成国庆风头像的小工具 详解实现过程
2021/10/05 Javascript