欢迎大家搜索关注微信公众号“米兔软件测试”,测试开发工程师技术修炼小站,持续分享测试干货。
上一小节中,我们掌握了pytest的几种用例运行方法,这一小节我们梳理汇总一下pytest常见的命令。
首先讲一下pytest测试用例的运行结果,一般有以下几种状态:
括号中表示状态缩写
pytest常见的命令行参数整理汇总:
在cmd命令行中,执行命令 pytest --help,,就可以查看pytest常见的命令行参数
接下来我们逐一解释,这些命令行参数
--collect-only选项
代表在给定的配置下统计哪些测试用例会被执行
示例:执行命令pytest ./test --collect-only
可以统计出来test目录下,有多少测试用例会被执行
-k选项
代表允许你使用关键字来指定你希望运行的测试用例,这个功能非常实用。如果测试名是唯一的,或者多个测试名的前缀或后缀相同,那么可以使用关键字来快速定位。
示例:执行命令pytest ./test -k "one or two"
test目录下,测试函数名包含字符串“one”或“two”的用例会被执行,以下定位并执行了6条用例。
-m选项
代表可以标记测试用例并将其分组,以便快速选中并运行。常用的使用场景比如我们平时的测试中,会将一些核心的用例标记为smoke冒烟用例,冒烟用例执行通过了,代表这个需求可以提测了
示例:执行命令pytest ./test -m "smoke"
test目录下,被装饰器@pytest.mark.smoke装饰过两个测试用例,被定位执行了
-v选项
代表pytest会输出更加详细的日志,方便定位问题
示例:pytest -v .\test\test_demo.py
-q选项
代表会简化pytest的日志信息,与-v选项功能相反
示例:pytest -q .\test\test_demo.py
-x选项
代表多个用例执行时,如果有一个用例执行失败了,就不会执行后面的测试用例了,如果没有使用-x命令,就会继续执行后面的用例
示例: pytest -x ,test目录下test_demo模块中有失败用例,后面的其他模块的用例就不会执行了
--maxfail=num选项
与-x命令类似,-x命令的特点是一旦遇到测试失败,就全局停止。--maxfail选项允许你失败几次后再停止
示例:pytest --maxfail=3,允许3次失败后再停止
--lf选项
当一个或者多个测试失败时,我们常常希望能够定位到最后一个失败的测试用例,并让它重新运行,这时候可以使用--lf选项
示例:pytest -lf,只会运行上一次失败过得测试用例
--ff选项
与--lf选项类似,--lf只会运行上次失败的用例,而--ff会先运行上次失败的用例,然后会将其余剩下的用例也执行完毕
示例:pytest -ff
--version选项
代表查看pytest的版本号