pytest(二)—用例的调用方法

  • Post author:
  • Post category:其他




1. 运行指定的测试

Pytest支持命令行运行所选择的测试用例

1.

运行某文件下的所有测试

pytest test_sample.py

2.

运行某目录下的所有测试文件

pytest somepath/


3.运行与关键字匹配的测试

pytest -k “stringexpr”


4.根据节点id运行测试


每个测试用例都被分配了唯一的节点id,id是根据指定的模块名、类名、函数名和参数组成的,由符号::进行分隔。


指定执行一个模块中(也就是一个.py)的函数测试:

pytest test_mod.py::test_func


指定一个方法运行测试,需要提供模块名-类名-方法名

pytest test_mod.py::TestClass::test_method


5.根据标记运行测试

pytest -m slow

运行所有装饰器带@pytest.mark.slow装饰的测试。


6.从包中运行测试

pytest —pyargs pkg.testing

导入pkg.testing并且用其文件系统位置找到且运行测试。



2.报告摘要

运行完测试,pytest支持显示一个简短的测试摘要信息,执行时可加-r。可以在大型测试套件中容易的得到所有失败、跳过等状态结果的清晰图片。

在这里插入图片描述


-r

后可加不同的选项字符,控制显示的结果信息

f – failed

E – error

s – skipped

x – xfailed

X – xpassed

p – passed

P- passed with output

如果只有-r没有其他选项,


默认fE

,显示failed与error的用例结果

如只显示failed与skipped的测试用例结果,可执行:

pytest -rfs

用p列出通过的测试,P列出通过且捕获到输出的测试。

pytest -rpP



3.python代码怎样运行pytest

python代码可直接调用pytest:


pytest.main()


此命令与从命令行调用“pytest”一样。它不会引发SystemExit,而是返回exitcode。

也可以传入选项和参数:

pytest.main(['-q','-s','pytest1'])



版权声明:本文为weixin_37828116原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。