Pytest(2)使用和调用方法

本文介绍了Pytest执行测试用例的多种规则,包括按目录、模块、文件、标记、关键字表达式和节点ID运行测试。还展示了如何通过Pycharm配置Pytest作为默认测试运行器,并支持unittest脚本。此外,文章提供了不同选项如快速打印(-q)、详细打印(-s)、错误时停止(-x)和最大失败次数(--maxfail)的使用方法。
摘要由CSDN通过智能技术生成

Pytest执行用例规则

Pytest在命令行中支持多种方式来运行和选择测试用例

1.对某个目录下所有的用例

pytest

2.对模块中进行测试

pytest test_mod.py

3.对文件夹进行测试

pytest testing

4.通过标记来进行测试

pytest -m slow

这种方式会运行所有通过装饰器 @pytest.mark.slow进行装饰的测试用例。

5.通过关键字表达式来进行测试

pytest -k "MyClass and not method"

这种方式会执行文件名,类名以及函数名与给定的字符串表达式相匹配的测试用例。 上面的用例会执行TestMyClass.test_something但是不会执行TestMyClass.test_method_simple

6.通过节点id来测试

每个被选中的测试用例都会被分配一个唯一的nodeid,它由模块文件名和以下说明符组成:参数化的类名、函数名和参数,用::分隔。

# 测试test_1.py文件下的TestClass类下的test_method方法
pytest test_1.py::TestClass::test_method

# test1.py文件
class TestClass(object):
    def test_one(self):
        x = "hello"
        assert 'h' in x

    def test_method(self):  # 测试的就是这个方法
        x = "hello"
        assert 'h' in x

7.从包中运行测试

pytest --pyargs pkg.testing

这将会导入pkg.testing并使用其文件系统位置来查找和运行测试。

8.-q 简单打印,只打印测试用例的执行结果

pytest -q test_1.py

9.-s 详细打印

pytest -s test_1.py

10.-x 遇到错误时停止测试

pytest -x test_1.py

11. --maxfail=num,测试在第1(N)次测试失败后停止

pytest --maxfail=2 test_1.py

Pycharm运行Pytest

1.新建一个工程后,左上角Pycharm->Preference->Tools->Python Integrated Tools->Default test runner->选择pytest

2.pytest是可以兼容unittest脚本的,之前写的unittest用例也能用pytest框架去运行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值