Pytest参数详解 — 基于命令行模式!

1、--collect-only

查看在给定的配置下哪些测试用例会被执行

2、-k

使用表达式来指定希望运行的测试用例。如果测试名是唯一的或者多个测试名的前缀或者后缀相同,可以使用表达式来快速定位,例如:

命令行-k参数.png

3、-m

标记(marker)用于标记测试并且分组,以便快速选中并运行。使用 @pytest.mark 来标记。

  • 可以使用 -m "mark1 and mark2" 同时选中贷有这两个标记的所有测试用例。

  • 使用 -m "mark1 and not mark2" 则会选中有mark1的测试用例,而过滤掉 mark2 的测试用例。

  • 使用 -m "mark1 or mark2" 选中带有 mark1 或者 mark2 的所有测试用例

4、-x

正常情况下 pytest 会运行每一个搜集到的测试用例。如果某个测试用例断言失败,或者触发了异常,那么该测试用例的运行就会到此停止。pytest 会将其标记为失败后继续运行下一个测试用例。但是在 debug 时,如果需要遇到失败立即停止整个会话可以加上 -x。调试完成后可以去掉 -x,可以使用 -tb=no 关闭错误信息回溯。

5、--maxfail=num

-x 是遇到失败就停止运行,而 --maxfail 则可以指定允许失败几次,达到最大失败次数以后停止运行

6、-s 与 --capture=method

-s 等价于 --capture=no ,关闭了输出捕获。正常情况下,任何符合标准的输出流信息都会被捕获。--capture=fd 时,若文件描述符(file descriptor)为1或者2,则会被输出至临时文件中。使用 --capture=sys 时sys.stdout/stderr 将会被输出至内存。

7、-l/--showlocals

在测试失败时会打印出局部变量名和他们的值以避免不必要的 print 语句

8、--if/--ff

当一个或者多个测试用例失败时,如果希望定位到最后一个失败的用例重新运行,可以使用 --lf。--ff 与 --lf 基本相同,不同的在于 --ff 会运行完剩余的测试用例

9、-v

使得输出信息更详细,不加的情况下每个文件显示一行,加了以后每条用例显示一行,测试名与结果都会显示出来而不仅仅是一个点或者一个字符

10、-q

与 -v 相反,简化输出信息。

11、--tb=style

  • --tb=style:决定捕捉到的失败时输出信息的显示方式。
  • --tb=no:屏蔽全部回溯信息
  • --tb=line:打印错误的位置

  • --tb=short:较 no 和 line 更详细,给出错误信息

  • --tb=long:输出最为详细的信息

  • --tb=auto:默认值,如果有多个用例失败,仅打印第一个和最后一个用例的回溯信息,格式为 long

  • --tb=native:只输出 Python 标准库的回溯信息

12、--duration=N

可以加快测试节奏,统计测试过程中哪个阶段时最慢的,包括测试用例的 call、setup、teardown。他会显示最慢的 N 各阶段,耗时越长越靠前,如果 N = 0,则会将所有阶段按照耗时从长到短排序后显示

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

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

相关推荐
程序员的世界你不懂19 分钟前
Appium+python自动化(二十一)- Monkey指令操作手机
python·appium·自动化
belldeep42 分钟前
python 在基因研究中的应用,博德研究所:基因编辑
python·基因·broad institute·博德研究所·基因编辑
XMYX-01 小时前
Python 实现一个带进度条的 URL 批量下载工具(含 GUI 界面)
开发语言·python
真实的菜2 小时前
面试高频问题
面试·职场和发展·linq
未来并未来2 小时前
Sentinel 流量控制安装与使用
开发语言·python·sentinel
汇能感知2 小时前
光谱相机叶绿素荧光成像技术的原理
经验分享·笔记·科技
东皇太星3 小时前
Python 100个常用函数全面解析
开发语言·python
知之则吱吱3 小时前
亚马逊云服务器(AWS)会限制用户使用吗?深度解读AWS资源政策
服务器·经验分享
·云扬·3 小时前
【PmHub面试篇】集成 Sentinel+OpenFeign实现网关流量控制与服务降级相关面试题解答
面试·职场和发展·sentinel
luofeiju4 小时前
数字图像处理与OpenCV初探
c++·图像处理·python·opencv·计算机视觉