Pytest.mark.parametrize()基本用法
Pytest.mark.parametrize()基本用法
@pytest.mark.parametrize()基本用法
数据驱动:就是把我们测试用例的数据放到excel,yaml,csv,mysql,然后通过去改变数据达到改变测试用例的执行结果。
@pytest.mark.parametrize(args_name,args_value)
args_name :参数名,字符串,多个参数中间用逗号隔开
args_value:参数值(列表,元组,字典列表,字典元组),有多个值用例就会执行多少次,是list,多组数据用元组类型,传三个或更多参数也是这样传。list的每个元素都是一个元组,元组里的每个元素和按参数顺序一一对应
例如:
1.传一个参数@pytest.mark.parametrize('参数名',list)进行参数化
2.传两个参数@pytest.mark.parametrize('参数名1,参数名2',[(参数1_data[0], 参数2_data[0]),(参数1_data[1], 参数2_data[1])]) 进行参数化
方式一
# -*- coding: utf-8 -*-
import pytest
class TestApi:
def test_01_jame(self):
print('\n测试Jame')
@pytest.mark.parametrize('args_name',['小三','王五','李德','王麻子'])
def test_02_lucy(self,args_name):
print('\n测试lucy')
print('---------------------------'+str(args_name))
if __name__ == '__main__':
pytest.main(['-vs','--html==./ReportTest.html'])
方式二
import pytest
class TestApi:
def test_01_jame(self):
print('\n测试JAME')
@pytest.mark.parametrize('args', [['小明', '18'], ['王林', '16']])
def test_02_lucy(self, args):
print('\n测试Lucy')
print(args)
if __name__ == '__main__':
pytest.main(['-vs', '--html=../report/report.html'])

Pytest.mark.parametrize()基本用法的更多相关文章
- pytest自动化6:pytest.mark.parametrize装饰器--测试用例参数化
前言:pytest.mark.parametrize装饰器可以实现测试用例参数化. parametrizing 1. 下面是一个简单是实例,检查一定的输入和期望输出测试功能的典型例子 2. 标记单 ...
- pytest.mark.parametrize()参数化应用二,读取json文件
class TestEnorll(): def get_data(self): """ 读取json文件 :return: """ data ...
- pytest.mark.parametrize()参数化的应用一
from page.LoginPage import Loginpage import os, sys, pytest base_dir = os.path.dirname(os.path.dirna ...
- Pytest系列(9) - 参数化@pytest.mark.parametrize
如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 pytest允许在多个级别启 ...
- 5.@pytest.mark.parametrize()数据驱动
简介: pytest.mark.parametrize 是 pytest 的内置装饰器,它允许你在 function 或者 class 上定义多组参数和 fixture 来实现数据驱动. @pytes ...
- python+接口参数化(ddt和pytest.mark.parametrize())使用
一.ddt(基于unittest) 实例:字典解包[{},{}] test_data=t.read_excel(mode,case_list)@ddt class Interface(unittest ...
- 【pytest】@pytest.fixture与@pytest.mark.parametrize结合实现参数化
背景:测试数据既要在fixture方法中使用,同时也在测试用例中使用 使用方法:在使用parametrize的时候添加"indirect=True"参数.pytest可以实现将参数 ...
- Python测试框架pytest命令行参数用法
在Shell执行pytest -h可以看到pytest的命令行参数有这10大类,共132个 序号 类别 中文名 包含命令行参数数量 1 positional arguments 形参 1 2 gene ...
- pytest.6.Parametrize Fixture
From: http://www.testclass.net/pytest/parametrizing_fixture/ 背景 @pytest.mark.parametrize 装饰器可以让我们每次参 ...
- pytest参数化 parametrize
pytest.mark.parametrize装饰器可以实现测试用例参数化 parametrizing 1.这里是一个实现检查一定的输入和期望输出测试功能的典型例子 # content of test ...
随机推荐
- 题解 CF980B
前言: 关于原题目中的 "旅馆" 这一用词,个人感觉用起来十分不畅,于是下文中将会用 "障碍物" 一词来代指旅馆. 题目大意: 有一座 \(4 \times n ...
- AndroGenshin
是一个apk文件 jadx打开以后发现主要操作 找到mainactivity,研究代码可以知道主要操作就是对两个字符串进行RC4加密再进行一次换表的base64操作,最后再将加密后的结果与flag做对 ...
- vue 中引入pingfang字体 或者其他字体 支持ttf otf格式
新建一个font 文件 里面放字体文件 可以百度搜索你想要的字体下载下来 一般10m左右 新建一个font.css 里面配置字体 @font-face { font-family: 'PF'; ...
- ES到底是个什么东西
概念:全文检索服务器(是基于Lucene开发的全文检索服务器),它可以近乎实时存储.检索数据,底层仍然是Lucene来实现的所以索引和搜索功能,他的目的是通过的简单的RESTFul API 来隐藏Lu ...
- 如何判断lib和dll是32位还是64位?答案是使用微软的dumpbin工具,后面讲了如何使用gcc生成lib和dll
为什么我会考虑这个问题呢?因为我在使用java去调用一个c的lib库的时候,弹出以下警告: D:\work\ideaworkpaces\jdk21Test001\src\main\java\lib\h ...
- 安装Office
安装Office 第一步 访问: https://otp.landian.vip/zh-cn/ 点击立即下载 选择: 第二步 打开下载好的zip,解压,启动程序 第三步 选择部署(在这里可以看到电脑已 ...
- Date、正则表达式练习
Date.正则表达式练习 package com.guoba.date; import java.text.SimpleDateFormat; import java.util.Calendar; i ...
- 解决 IDEA 报错ERROR:JAVA: 无效的源发行版: 11
解决 IDEA 报错ERROR:JAVA: 无效的源发行版: 11 原因 一般都是创建工程的时候 一路next 默认选择了 Java Version 11, 而本地的jdk版本是 8 解决 File ...
- ElasticSearch之Refresh API
使用本方法,显式的执行refresh操作. 默认情况下,ElasticSearch启动后台任务,周期性执行refresh操作,周期使用参数index.refresh_interval控制. 本方法触发 ...
- 技本功|Hive优化之监控(三)
Hive是大数据领域常用的组件之一,主要是大数据离线数仓的运算,关于Hive的性能调优在日常工作和面试中是经常涉及的一个点,因此掌握一些Hive调优是必不可少的技能.影响Hive效率的主要有数据倾斜. ...