PlayWright(十七)- 参数化
1、参数化怎么用
@pytest.mark.parametrize(self,argnams,argvalues,indirect=False,ids=None)
- argnams 参数名,是一个字符串,若有多个参数中间用逗号分隔
- argvalue 参数值,是一个列表,列表中有几个元素,便会生成几个用例
- indirect 默认为False,若为True则表示参数名是一个函数
- ids 可以将用例重命名
2、传一个参数
import pytest
"""
参数化的使用
"""
@pytest.mark.parametrize('num', [1, 2, 3, 4, 5])
def test_01(num):
print(f"传入的参数是:{num}")
2、传多个参数
@pytest.mark.parametrize('a,b,c', [(1, 2, 3), (4, 5, 6)])
def test_01(a, b, c):
print(f"传入的参数分别是:{a},{b},{c}")
@pytest.mark.parametrize('a,b,c', [{1, 2, 3}, {4, 5, 6}])
def test_01(a, b, c):
print(f"传入的参数分别是:{a},{b},{c}")
3、数据驱动
json_file = '具体的json文件路径' # 这里我们填写json的绝对路径 def get_data():
"""
封装处理json数据的
"""
test_data = [] # 先定义一个数据存储器,读取的数据要往这里填 # 打开文件加载
with open(json_file, encoding="utf-8") as f: # 打开json文件夹
case = json.load(f) # 将JSON字符串转换为字典存放到case中 for case_data in case.values(): # 将数据循环拆开,变成元祖格式在放到我们之前的容器中
test_data.append(tuple(case_data.values())) return test_data
import pytest
# 导入了处理数据的文件,方便之后调用函数
from tools.get_data import get_data @pytest.mark.parametrize("name,age", get_data())
def test01(name, age):
print(f"传入的参数分别是:{name},{age}")
PlayWright(十七)- 参数化的更多相关文章
- Jmeter(三十七)循环控制器+交替控制器+事务控制器 完美实现接口字段参数化校验
我们在做接口自动化的时候,常常因为无法灵活的的校验接口字段而烦恼.不能自动校验接口字段的脚本,也就不能称之为接口自动化.因此,我设计了一套组合式的控制器,可以完美的解决这个问题 1:首先我们需要在本地 ...
- (C/C++学习笔记) 十七. 面向对象程序设计
十七. 面向对象程序设计 ● 面向对象程序设计的基本概念 ※ 类实际上是一种复杂的数据类型,它不仅包含不同类型的数据,还包含对这些数据的一些必要的操作. 而对象则是这种复杂的数据类型的一个变量. 类是 ...
- LoadRunner 参数化之 连接数据库进行参数化
LoadRunner 参数化之 连接数据库进行参数化 Loadrunner(简称“LR”)对性能测试的脚本进行参数化时,由于数据量偏大,大家往往都会把数据录入到数据库表里,然后关联到LR,本文将详细介 ...
- playwright自动化项目搭建
这是关于playwright系列介绍的最后一篇.搭建基于 playwright 的自动化项目. GitHub地址: https://github.com/defnngj/playwright-pro ...
- 第十七个知识点:描述和比较DES和AES的轮结构
第十七个知识点:描述和比较DES和AES的轮结构 这是密码学52件事中的第17篇.本周我们描述和比较DES和AES的结构. DES和AES都是迭代分组密码的例子.分组密码通过重复使用一个简单的轮函数来 ...
- playwright结合pytest使用案例
playwright简介 不愧是宇宙最强,它也是目前为止对ui自动化领域里最好的一个库,在selenium之上,还有对应的异步机制,其他见百度不便在此详叙. 本篇经典案例是对我司的veer产品做ui自 ...
- 微软出品自动化神器【Playwright+Java】系列(十二)测试框架的设计与开发
一.前言 大家好,我是六哥! 又有好长一段时间没更文了,不是我懒,而是确实在更文上,没有以前积极了,这里是该自我检讨的. 其实不是我不积极,而是相对更文学习来说,优先级不是最高. 对我而言,目前最重要 ...
- 我的MYSQL学习心得(十七) 复制
我的MYSQL学习心得(十七) 复制 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...
- lr文件下载脚本(文件参数化重命名)
http://wenku.baidu.com/link?url=6oiIadyF9eFS4VshKbfJDnxrBh2IX919ndi0JO8yoqTRNRNIpavFrZJ9LPVb-FBSfbRY ...
- SQL Server 动态行转列(参数化表名、分组列、行转列字段、字段值)
一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现代码(SQL Codes) 方法一:使用拼接SQL,静态列字段: 方法二:使用拼接SQL, ...
随机推荐
- jquery全选,全不选,反选,获取选择框的值
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 【谷粒商城】(二)SpringCloudAlibaba分布式组件
微服务 分布式组件 注册中心:每一个微服务上线都应该注册到注册中心.这样做的好处在于方便微服务之间的相互调用,比如订单服务想要调用商品服务,就可以通过注册中心查看有哪几台主机的商品服务进行了注册,然后 ...
- ☆常用的Sql语句汇总(DDL/DML)
常用的sql语句汇总 1.获取所有表名.表信息 里面有表注释 数据库种类 sql 备注 mysql -- 获取所有表名.视图名show tables-- 获取 dev_test_data数据库 所有表 ...
- Linux下七种文件类型、文件属性及其查看方法
1.七种文件类型 普通文件类型 Linux中最多的一种文件类型, 包括 纯文本文件(ASCII):二进制文件(binary):数据格式的文件(data);各种压缩文件.第一个属性为 [-] 目录文件 ...
- Grafana 系列-统一展示-3-Prometheus 仪表板
系列文章 Grafana 系列文章 知识储备 Prometheus Template Variables 你可以使用变量来代替硬编码的细节,如 server.app 和 pod_name 在 metr ...
- Vulhub activewq_漏洞复现——源码分析
Vulhub activewq_漏洞复现--源码分析 漏洞简介 Apache ActiveMQ是由美国阿帕奇(Apache)软件基金会开发的开源消息中间件,支持Java消息服务.集群.Spring框架 ...
- 2021-05-04:给定一个非负整数c,你要判断是否存在两个整数a和b,使得a*a+b*b=c。【举例】c=5时,返回true。c=4时,返回true。c=3时,返回false。
2021-05-04:给定一个非负整数c,你要判断是否存在两个整数a和b,使得aa+bb=c.[举例]c=5时,返回true.c=4时,返回true.c=3时,返回false. 福大大 答案2021- ...
- docker安装kibana,报错Kibana server is not ready yet,未解决
1.命令 docker run -d -e ELASTICSEARCH_URL=http://192.168.101.158:9200 -p 5601:5601 --name kibana kiban ...
- 在开发过程中使用git rebase还是git merge,优缺点分别是什么?
前言 在开发过程中,git rebase 和 git merge 都是常见的代码版本管理工具.它们都能够将分支合并到主分支,并且都有各自的优缺点. git merge git merge 是一种将两个 ...
- 禁用input自动补全,模拟type=password输入字符显示为星号
最近遇到一个想禁用浏览器的密码自动补全的功能,翻遍了整个技术论坛大多使用用auto-complete="new-password"但是本人测试不怎么管用,所有又找到了如下几种方法, ...