news 2026/9/16 14:56:26

Pytest自动化测试实战之执行参数

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Pytest自动化测试实战之执行参数

🍅点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快

上一篇介绍了如何运行pytest代码,以及用例的一些执行规则,执行用例发现我们中间print输出的内容,结果没有给我们展示出来,那是因为pytest执行时,后面需要带上一些参数。

参数内容

我们可以在cmd中通过输入 pytest -h 或者pytest --help 来查看帮助内容

奈何安静屏幕小,只写了一部分。

安静这么多一点点的给大家介绍,有的安静也没有遇到过,在后续遇到后,给大家分享,安静先把常用的给大家列出来,并且举例说明

安静简单的用一段代码进行展示,后面有需要补充的,安静会进行在代码中补充。

import pytest class Test_01: def test_001(self): print('Test_01下的用例001') assert 1 == 1 def test_002(self): print('Test_01下的用例002') assert 1 == 2 def test_003(self): print('Test_01下的用例003') assert 3 == 3 if __name__ == '__main__': pytest.main()

pytest - s

-s:执行用例,携带详细信息,比如打印的print内容

通过cmd进行执行,发现已经详细内容展示出来了

pytest -x

-x:遇到错误的用例,立即退出执行,并输出结果

从上图可以看到一共3条用例,执行了2条,其中执行到第2条的时候就已经程序就退出了。

pytest -k

-k:表示加需要执行的用例项,-k后面可以是测试函数名,也可以是类名,也可以是模块名,以及目录名称

也可以通过加入not来不执行一些用例,这里的not要和用例名放在一起用引号

pytest xxx.py

::类::用例:可以通过这种形式进行指定用例执行

pytest -m

-m:执行被标记的用例

标记需要用到pytest中的装饰器 @pytest.mark.标记名称

import pytest class Test_01: @pytest.mark.anjing def test_001(self): print('Test_01下的用例001') assert 1 == 1 def test_002(self): print('Test_01下的用例002') assert 1 == 2 @pytest.mark.anjing def test_003(self): print('Test_01下的用例003') assert 3 == 3 if __name__ == '__main__': pytest.main()

pytest -v

-v:表示查看详细的报告内容

pytest -q

-q:表示简则的测试报告,运行成功通过“.”表示,运行失败通过"F"表示

pytest --collect-only

--collect-only:表示把待执行的用例全部展示出来。

pytest --maxfail=n

--maxfail=n:其中n表示失败的次数,运行失败n次后,进行停止测试

# coding:utf-8 class Test: def test_01(self): print('这是用例01') assert 1 == 1 def test_02(self): print('这是用例02') assert 1 == 2 def test_03(self): print('这是用例03') assert 3 == 4 def test_04(self): print('这是用例04') assert 4 == 4

pytest --lf

--lf:只执行上次失败的用例

pytest --tb

--tb=no:不展示用例失败的错误详情

--tb=line:展示用例失败的代码具体行数。下图结果是在11行

--tb=short:展示更加详细的错误信息

pytest --durations

--duration=N:表示把最耗时间的用例展示出来,N表示最慢的N个

安静的代码运行都很快,把其中一个代码加上睡眠,从图中可以看出来,test_01文件中的test_03运行最慢。

安静简单的列举了常用的几种,大家如果还想要了解可以查阅官方文档和进行pytest -h 查看详情

写在最后

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/12 10:31:44

[特殊字符]_高并发场景下的框架选择:从性能数据看技术决策[20260120165318]

作为一名经历过无数生产环境考验的资深工程师,我深知在高并发场景下选择合适的技术栈是多么重要。最近我参与了一个日活千万级的电商平台重构项目,这个项目让我重新思考了Web框架在高并发环境下的表现。今天我要分享的是基于真实生产数据的框架性能分析&…

作者头像 李华
网站建设 2026/9/15 21:35:38

RS485 电路图----普通收发,自动收发

一、RS485 通信----简介RS485 是美国电子工业协会(Electronic Industries Association,EIA)于1983年发布的串行通信接口标准,经通讯工业协会(TIA)修订后命名为 TIA/EIA-485-A。 RS485 是一种工业控制环境中…

作者头像 李华
网站建设 2026/9/15 17:30:14

第五章:并发编程(上)

并发介绍 进程和线程 A. 进程是程序在操作系统中的一次执行过程,系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中的多个线程之间可以并…

作者头像 李华
网站建设 2026/9/15 16:43:11

RS232接口引脚定义与电平匹配问题图解说明

RS232接口引脚定义与电平匹配:从踩坑到精通的实战指南你有没有遇到过这种情况?MCU代码写得一丝不苟,串口配置也反复核对,可设备就是“哑巴”——收不到数据、发出去的数据全是乱码,甚至一通电,MAX232芯片就…

作者头像 李华
网站建设 2026/9/15 18:55:29

译码器学习

https://mp.weixin.qq.com/s/rhFpVGbRpzpjevP7I4a7oQhttps://mp.weixin.qq.com/s/rhFpVGbRpzpjevP7I4a7oQ 进制转换 十进制→二进制 利用“短除法”来列出这一计算过程 2 | 46 -> 0 ^ 低位---- |2 | 23 -> 1 |---- …

作者头像 李华