Pytest命令行常用参数
Pytest 命令行常用参数
简介
Pytest 支持多种命令行参数,用于控制测试运行的行为。
命令行运行测试用例的优点
-
简单易用:Pytest 的命令行工具非常简单易用,只需在终端中运行
pytest
命令即可自动发现并运行测试用例。不需要复杂的配置和设置,使得测试用例的运行变得非常简便。 -
自动化测试发现:Pytest 会自动搜索项目中所有的测试文件,并发现其中的测试用例。这样,无需手动指定测试文件路径和测试用例,大大减少了测试用例编写和执行的工作量,提高了测试的效率。
-
强大的测试运行和收集功能:Pytest 提供了灵活而强大的测试运行和收集功能。可以通过各种选项和标记来定制测试用例的运行方式,如只运行某个目录下的测试用例、只运行特定标记的测试用例等。这使得测试管理和组织变得更加灵活和方便。
命令行参数的使用
常见的命令行参数的使用
--help 获取所有参数列表
-x 用例一旦失败(fail/error),就立刻停止执行
--maxfail=num 用例达到 num 的数量后停止执行
-m 标记用例
-k 执行包含某个关键字的测试用例
-v 打印详细日志
-s 打印输出日志(一般-vs一块儿使用)
--collect-only(测试平台,pytest 自动导入功能 只收集不执行)
def double(a):
return a * 2
def test_double_int():
assert 2== double(1)
def test_double1_minus():
assert -20 == double(-1) #有错误的用例
def test_double_float():
assert 0.2 == double(0.1)
def test_double2_minus():
assert -0.2 == double(-0.1)
def test_double_0():
assert 0 == double(0)
def test_double_bignum():
assert 200 == double(100)
def test_double_str():
assert 'aa' == double('a')
def test_double_str1():
assert 'a$a$' == double('a$')
用例一旦失败就立即停止运行(-x):
pytest test_command_param.py -x
执行包含str
关键字的测试用例(-k):
pytest test_command_param.py -k "str"
打印详细日志和输出日志(-vs):
pytest test_command_param.py -vs
只收集不运行测试用例:
pytest --collect-only
处理失败测试用例的命令行参数的使用
--lf(--last-failed)
只重新运行故障。--ff(--failed-first)
先运行故障然后再运行其余的测试。
只重新运行失败的测试用例:
pytest --lf
将用例修改成功后再运行这一命令,则会将所有测试用例执行一遍。
先运行失败的测试用例然后再运行其余的测试用例:
pytest --ff
总结
- 使用命令行参数的优点。
- 命令行参数的使用。