测试驱动技术系列之怎么用pytest实现测试数据驱动
发表于:2025-11-13 作者:千家信息网编辑
千家信息网最后更新 2025年11月13日,本篇内容主要讲解"测试驱动技术系列之怎么用pytest实现测试数据驱动",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"测试驱动技术系列之怎么用pytest实
千家信息网最后更新 2025年11月13日测试驱动技术系列之怎么用pytest实现测试数据驱动

本篇内容主要讲解"测试驱动技术系列之怎么用pytest实现测试数据驱动",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"测试驱动技术系列之怎么用pytest实现测试数据驱动"吧!
一组参数化数据
定义参数化数据,代码如下:
class TestDemo1: @pytest.mark.parametrize('actual_string, expect_string', [(1, 1), ('BB', 'BB'),('AA', 'BB')]) def test_1(self, actual_string, expect_string): assert (expect_string == actual_string)运行结果如下,三组数据在三条测试用例中运行,其中数据('AA', 'BB')运行失败!

多组参数化数据
在一个测试类中,可以定义多组参数化数据(参数化数据个数不同,test_1二个,test_2三个),代码如下:
class TestDemo1: @pytest.mark.parametrize('actual_string, expect_string', [(1, 1), ('BB', 'BB'),('AA', 'BB')]) def test_1(self, actual_string, expect_string): assert (expect_string == actual_string) @pytest.mark.parametrize('result, a,b', [(1, 1,0),(2, 1,0) ]) def test_2(self, result, a,b): assert (result == a+b)运行结果如下,二组数据分别在test_1和test_2中运行!

从excel中读取数据作为参数
我们可以自定义一些方法,对外部文件进行读取,然后把读取的数据作为参数在pytest
中引用。把测试数据保存在excel中,如下图
写一个读取excel类文件的方法,使用模块pandas ,使用命令pip install pandas 安装模块,源码如下:
import pandas as pd # 读取Excel文件 -- Pandas def read_data_from_pandas(excel_file, sheet_name): if not os.path.exists(excel_file): raise ValueError("File not exists") s = pd.ExcelFile(excel_file) df = s.parse(sheet_name)#解析sheet页的数据 return df.values.tolist()#数据返回为list从excel中读取数据,并赋值给变量进行参数化,代码如下:
@pytest.mark.parametrize('actual_string, expect_string', read_data_from_pandas('E:/TestData.xls', 'data1')) def test_3(self, actual_string, expect_string): assert (expect_string == actual_string)运行结果如下,三组数据在三条测试用例中运行!
注意:excel中的首行,默认不会作为测试数据处理。
到此,相信大家对"测试驱动技术系列之怎么用pytest实现测试数据驱动"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
数据
测试
参数
运行
驱动
技术
代码
文件
方法
结果
内容
模块
三条
学习
不同
实用
更深
三个
个数
兴趣
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
戴尔R210服务器 风扇转速
山西讯名网络技术有限公司
兴化小型网络技术解决方案
识别手机里的数据库
网站中转服务器是干什么的
华为ai服务器哪个好做
兴城高速服务器电话
未成年网络安全法制课ppt
mes软件开发文档
政府软件开发项目周期
非法经营期货软件开发
混沌与秩序2数据库
网络安全先进个人宣传稿
数据库id增长太快
网络安全和java哪个好学
高防服务器是什么意思
嵌入式软件开发的简历模板
跑跑卡丁车手游杯王争霸赛服务器
古典文学下载软件开发
网络安全班会文案
服务器电源风扇有6条线
网络技术措施44号文
服务器怎么配置管理地址
宁波安卓的软件开发
管网络安全的部门叫什么
通过网络安全宣传有什么作用
应用软件开发有哪些风险
半导体测试软件开发有前景吗
计算机网络技术专业知识点
中国国家地名数据库如何下载