Pytest三种运行方式

Pytest 运行方式共有三种:

1、主函数模式

  • 运行所有 pytest.main()

  • 指定模块 pytest.main('[-vs],','./testcase/test_day1.py')  只运行testcase 下的test_day1.py 文件

  • 指定目录 pytest.main('[-vs]'),'./testcase')    只运行testcase 目录下的文件

  • 通过nodeid指定用例运行:nodeid由模块名,分隔符,类名,方法名,函数名组成

  1. 执行某个类:pytest 文件名.py::类名  例如: #pytest.main(["-vs"],'./interface_testcase/test_day3.py::TestLogin')

  2. 执行某个方法:pytest 文件名.py::类名::方法名  例如:#pytest.main(["-vs"],'./interface_testcase/test_day3.py::TestLogin::test_01_qianghong1')

  3. 执行模块中某个方法:pytest 文件名.py::方法名  例如:#pytest.main(["-vs"],'./interface_testcase/test_day3.py::test_demo11')

2、命令行模式

(1)运行所有:pytest

(2)指定模块 pytest -vs ./testcase/test_day1.py

(3)指定目录 pytest -vs ./testcase

(4)通过nodeid指定用例运行:nodeid由模块名,分隔符,类名,方法名,函数名组成

pytest -vs ./interface_testcase/test_day3.py::test_demo11

pytest -vs ./interface_testcase/test_day3.py::TestLogin::test_01_qianghong1

参数详解:

-s:表示输出调试信息,包括print打印的信息

-v显示更详细的信息

-vs一起使用

-n支持多线程或者分布式运行测试用例

#如 #pytest.main(['-vs','./testcase/test_day1.py','-n=2'])

# pytest -vs ./testcase/test_day1.py -n 2

#reruns==number 表示失败用例重跑

#pytest -vs ./testcase/test_day2.py --reruns 2

#pytest.main(['–vs','./testcase/test_day2.py',‘reruns=2']) #失败得的用例重跑两次

#-x表示只要一个用例报错,那么测试停止运行

#–maxfail=2 出现两个失败用例停止

#-k 根据测试用例的部分字符串指定测试用例

pytest -vs test_day2 -k “yang”

3、通过读取pytest ini配置文件运行 (最主要运用的方式)

#pytest.ini是pytest单元测试框架中的核心配置文件

(1)位置:一般是放在项目的根目录

(2)编码:必须是ANSI,可以使用notepad++来修改编码格式

(3)作用:改变pytest的默认行为

(4)运行的规则:不管是主函数的模式运行该,命令行模式,都会区读取这个配置文件

常用参数

addopts 命令行的参数,用空格分隔

testpaths 测试用例的路径

markers 标记参数,赋值方式为 key:value

python_files 模块的命名规则 xx.py

python_classes 类名的命名规则 Xxx

 python_functions 方法的命名规则 **

required_plugins 插件的使用

xfail_strict = true 禁用xpass

addopts: OPTS 命令行参数集

-s:表示输出调试信息,包括 print打印的信息
-v:显示更详细的信息
-vs:这两个参数一起用
-n :支持多线程或者分布式运行测试用例
     如:pytest -vs ./testcase/test_login.py -2
--html : 测试报告位置
--reruns : 失败重跑
-p no:warnings  : 取消警告
--ff : 先执行上次失败的用例
--lf : 只执行上次失败的用例
-x : 遇到测试用例fail,就结束测试
--maxfail=num:遇到num条测试用例fail, 就结束测试
-k :根据测试用例的部分字符串指定测试用例
    如:pytest -vs ./testcase -k “ao”

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/84639.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JavaScript + GO 通过 AES + RSA 进行数据加解密

浏览器端搞些小儿科的加密,就好比在黑暗夜空中,点缀了几颗星星,告诉黑客「这里有宝贵信息,快来翻牌」 浏览器端的加密,都是相对安全的。 它的具体安危,取决于里面存在的信息价值,是否值得破解者…

虹科新品 | 振动监测:提升风能行业效率与安全!

一、 CTC概览 服务于工业振动分析市场ISO 9001认证设计和测试以满足工业环境的实际需求无条件终身保修兼容所有主要数据采集器、分析仪和在线系统美国制造 二、风能行业:为什么要进行监测? 在风能行业,振动监测是一项至关重要的节约成本和安…

学习笔记-JVM监控平台搭建

SpringBoot Actuator 1 引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId> </dependency>2 开启配置 # 暴露所有的监控点【含Prometheus】 management.endpoin…

windows下以指定用户访问SMB服务器进行读写

一 概述 最近遇到一个问题&#xff0c;linux 的 smb服务器开启匿名访问&#xff0c;windows访问linux文件夹不需要用户名密码就可以进去使用&#xff0c;但是存在一个问题&#xff0c;ssh连接到linux 后修改的文件&#xff0c;在windows已smb方式下打开某个文件修改 是没有权限…

uniapp文件下载并预览

大概就是这样的咯&#xff0c;文件展示到页面上&#xff0c;点击文件下载并预览该文件&#xff1b; 通过点击事件handleDownLoad(file.path)&#xff0c;file.path为文件的地址&#xff1b; <view class"files"><view class"cont" v-for"(…

docker-compose Install minio

前言 MinIO 是一种高性能、兼容 S3 的对象存储。它专为大规模 AI/ML、数据湖和数据库工作负载而构建。它在本地和任何云(公共或私有云)上运行,从数据中心到边缘。MinIO是GNU AGPL v3下的软件定义和开源。 MinIO是对象存储服务,它基于Apache License 开源协议,兼容Amazon …

无脑——010 复现yolov8 使用rt detr 训练自己的数据集

1.配置环境 1. 首先去官网下载yolov8的zip https://github.com/ultralytics/ultralytics 存放在我的目录下G:\bsh\yolov8 然后使用conda创建新的环境 conda create -n yolov8 python3.8 #然后激活环境 conda activate yolov8然后安装pytorch&#xff0c;注意 &#xff0c;py…

GitOps 与 DevOps:了解关键差异,为企业做出最佳选择

在软件开发领域&#xff0c;GitOps 和 DevOps 是加强协作和实现软件交付流程自动化的重要技术。虽然这两种模式都旨在提高软件开发生命周期的效率&#xff0c;但它们的核心原则和实施方式却各不相同。 本篇文章将帮助您了解 GitOps 和 DevOps 之间的差异、它们的工作流程&am…

linux安装redis带图详细

如何在Linux系统中卸载Redis 一、使用apt-get卸载Redis sudo apt-get purge redis-server如果使用apt-get安装Redis&#xff0c;可以使用apt-get purge命令完全卸载Redis。其中&#xff0c;purge命令会不仅仅删除Redis二进制文件&#xff0c;还会删除配置文件、数据文件和日志…

logstash 采集 docker 日志

1、nginx容器部署 参考&#xff1a;nginx容器部署 将容器内的nginx日志文件映射到宿主机/home/logs/nginx目录下 注意&#xff1a;并且需要需要将日志的输出格式修改为json 2、编辑vim /opt/logstash-7.4.2/config/nginx-log-es.conf 文件&#xff0c;收集docker nginx容器日…

Vue + MapBox快速搭建

一、说明&#xff1a; 1.mapbox-gl自2.0版本开始不再开源&#xff0c;需要用户在官网申请key使用。 2.maplibre GL JS是一个开源库&#xff0c;它起源于 mapbox-gl-js 的开源分支。该库的初始版本&#xff08;1.x&#xff09;旨在替代Mapbox的OSS版本。简单来说maplibre是mapb…

Chatgpt API调用报错:openai.error.RateLimitError

Chatgpt API 调用报错&#xff1a; openai.error.RateLimitError: You exceeded your current quota, please check your plan and billing details. 调用OpenAI API接口 import openai import osopenai.api_key os.getenv("OPENAI_API_KEY")result openai.Chat…

Linux系统之使用cmatrix实现数字雨效果

Linux系统之使用cmatrix实现数字雨效果 一、cmatrix介绍二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍 三、环境准备工作3.1 安装开发环境3.2 安装基本软件3.3 安装 ImageMagick等工具 四、安装aalib工具4.1 新建目录4.2 下载aalib安装包4.3 解压软件包4.4 编译安装aalib …

Unity Git项目添加子模块

在 当前仓库根目录下执行命令 git submodule add https://github.com/xxx/child.git 检查仓库状态 git status 更新子库 git submodule update --remote 下拉父仓库Git并保住子库也更新 git pull --recurse-submodules 推荐使用 Githubdesktop工具 这样你可以更清楚的看到自己…

Redis学习笔记Day01-Redis入门

声明&#xff1a;本博客部分内容是从终极SpringBoot讲义摘抄的&#xff0c;文字是OCR识别出来的&#xff0c;有可能存在识别错误的可能&#xff0c;如有错误&#xff0c;请大胆指正&#xff0c;我马上修改&#xff01; 目录 0.官方参考手册API1.连接命令2.key相关命令3.String命…

基础实验篇 | QGC实时调整控制器参数实验

PART 1 实验名称及目的 QGC实时调整控制器参数实验&#xff1a;在进行硬件在环仿真和真机实验时&#xff0c;常常需要在QGC地面站中观察飞行状态&#xff0c;并对控制器参数进行实时调整&#xff0c;以使得飞机达到最佳的控制效果&#xff0c;但是&#xff0c;在Simulink中设…

【Python机器学习】实验11 神经网络-感知器

文章目录 人工神经网络感知机二分类模型算法 1. 基于手写代码的感知器模型1.1 数据读取1.2 构建感知器模型1.3 实例化模型并训练模型1.4 可视化 2. 基于sklearn的感知器实现2.1 数据获取与前面相同2.2 导入类库2.3 实例化感知器2.4 采用数据拟合感知器2.5 可视化 实验1 将上面数…

保姆级Arcgis安装图文安装教程

参考视频&#xff1a;【钟老师arcGIS从放弃到入门】02软件下载与安装_哔哩哔哩_bilibili 安装包在视频简介中有 注释&#xff1a;安装过程中有犯错误&#xff0c;请耐心看完一遍再跟着操作 &#xff08;一&#xff09;安装包下载 下载视频中分享的压缩包(压缩包密码&#x…

【C++】二叉搜索树的模拟实现(K,KV树)递归与非递归方式

文章目录 前言一、K树1.结点的定义2.构造函数3.拷贝构造函数4.赋值运算符重载5.析构函数6.二叉搜索树的查找&#xff08;find&#xff09;1.非递归2.递归 7.二叉搜索树的插入&#xff08;Insert&#xff09;1.非递归2.递归 8.二叉搜素树的删除&#xff08;Erase&#xff09;1.非…

yolov5的报错

【定期水一期】 &#xff08;这个问题很抓马&#xff0c;可以看一下这篇文章&#xff1a;Git Bash 教程&#xff01;【不是所有人都会用Git】&#xff09; 一&#xff1a;没有cv2这个模块 解决方案&#xff1a; pip install opencv-python -i http://pypi.douban.com/simple/…