本文接上篇继续简介pytest常用的命令行选项。
8、-v(--verbose) 选项
使用-v/--verbose选项,输出的信息会更详细。最明显的区别就是每个文件中的每个测试用例都占一行,测试的名字和结果都会显示出来,而不仅仅是一个点或字符。如下图:
在彩色显示器上可以看到FAILED标记为红色,PASSED标记为绿色。
9、-q(--quiet)选项
该选项的作用与-v/--verbose的相反,它会简化输出信息。如下图:
使用-q选项会简化输出信息,只保留最核心的内容。
10、--tb=style 选项
--tb=style选项决定捕捉到失败时输出信息的显示方式。某个测试用例失败后,pytest会列举出失败信息,包括失败出现在哪一行、是什么失败、怎么失败的,此过程我们称之为“信息回溯”。大多数情况下,信息回溯是有必要的,它对找到问题很有帮助,但有时也会对多余的信息感到厌烦,这时--tb=style选项就有用武之地了。常用的style类型有short、line、no。short模式仅输出assert的一行以及系统判定内容(不显示上下文);line模式只使用一行输出显示所有的错误信息;no模式则直接屏蔽全部回溯信息。
使用--tb=no屏蔽全部回溯信息。如下图:
使用--tb=line,它可以告诉错误的位置,如下图:
使用--tb=short,显示的回溯信息比前面两种模式的更详细。如下图:
除此之外,还有--tb=long输出最为详尽的回溯信息;--tb=auto是默认值,如果有多个测试用例失败,仅打印第一个和最后一个用例的回溯信息(格式与long模式一致);--tb=native只输出Python标准库的回溯信息,不显示额外信息。
11、--version 选项
使用--version可以显示当前的pytest版本及当前目录。如下图:
由于是用python pip命令安装的,所以会显示对就的site-packages目录。
12、-h(--help)选项
即使你已经熟练使用pytest,-h选项依然非常有用,它不但能展示原生的pytest的用法,还能展示新添加的插件的选项和用法。
使用-h选项可以获得:
. 基本用法:pytest [options] [file_or_dir] [file_or_dir] [...]
. 命令行选项及其用法,包括新添加的插件的选项及其用法。
. 可用于ini配置文件中的选项。
. 影响pytest行为的环境变量。
. 使用pytest --markers时的可用marker列表。
. 使用pytest --fixtures时的可用fixture列表。
帮助信息最后会显示一句话:
shown according to specified file_or_dir or current dir if not specified
这句话的意思为:显示结果取决于指定的文件或目录,未指定的则默认使用当前目录和文件。这句话非常重要,选项、marker、fixture都会因为目录的变化而发生变化。