Pytest 选择xfail测试或跳过测试

Pytest 选择xfail测试或跳过测试

在本章中,我们将学习Pytest中的跳过和Xfail测试。

现在,考虑以下情况-

  • 由于某些原因,某个测试在一段时间内不相关。
  • 正在实现新功能,并且我们已经为该功能添加了测试。

在这些情况下,我们可以选择xfail测试或跳过测试。

Pytest将执行xfail测试,但它不会被视为失败或通过的部分测试。即使测试失败(记住,pytest通常会打印失败的测试详细信息),也不会打印这些测试的详细信息。我们可以使用以下标记来xfail测试-

@pytest.mark.xfail

跳过测试意味着该测试不会被执行。我们可以使用以下标记来跳过测试-

@pytest.mark.skip

以后,在测试变得相关时,我们可以删除标记。

编辑 test_compare.py ,我们已经包含xfail和skip标记 –

import pytest
@pytest.mark.xfail
@pytest.mark.great
def test_greater():
   num = 100
   assert num > 100

@pytest.mark.xfail
@pytest.mark.great
def test_greater_equal():
   num = 100
   assert num >= 100

@pytest.mark.skip
@pytest.mark.others
def test_less():
   num = 100
   assert num < 200

使用以下命令执行测试 –

pytest test_compare.py -v

执行上述命令后,将生成以下结果:

test_compare.py::test_greater xfail
test_compare.py::test_greater_equal XPASS
test_compare.py::test_less SKIPPED
============================ 1 skipped, 1 xfailed, 1 xpassed in 0.06 seconds
============================

Pytest教程目录索引

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程