Pytest 文件执行


在本章中,我们将学习如何执行单个测试文件和多个测试文件。我们已经有一个测试文件 test_square.py 创建的。创建一个新的测试文件 test_compare.py 使用以下代码:

def test_greater():
    num = 100
    assert num > 100

def test_greater_equal():
    num = 100
    assert num >= 100

def test_less():
    num = 100
    assert num < 200

现在要从所有文件(这里有 2 个文件)运行所有测试,我们需要运行以下命令:

pytest -v

上面的命令将从两者运行测试 test_square.py and test_compare.py .输出将如下生成:

test_compare.py::test_greater FAILED
test_compare.py::test_greater_equal PASSED
test_compare.py::test_less PASSED
test_square.py::test_sqrt PASSED
test_square.py::testsquare FAILED
================================================ FAILURES 
================================================
______________________________________________ test_greater 
______________________________________________
    def test_greater():
    num = 100
>  assert num > 100
E  assert 100 > 100

test_compare.py创建的。创建一个新的测试文件 AssertionError
_______________________________________________ testsquare 
_______________________________________________
    def testsquare():
    num = 7
>  assert 7*7 == 40
E  assert (7 * 7) == 40

test_square.pytest_compare.py AssertionError
=================================== 2 failed, 3 passed in 0.07 seconds 
===================================

要从特定文件执行测试,请使用以下语法:

pytest <filename> -v

现在,运行以下命令:

pytest test_compare.py -v

上面的命令将只从文件中执行测试 测试比较.py。 我们的结果将是:

test_compare.py::test_greater FAILED
test_compare.py::test_greater_equal PASSED
test_compare.py::test_less PASSED
============================================== FAILURES 
==============================================
____________________________________________ test_greater 
____________________________________________
    def test_greater():
    num = 100
>  assert num > 100
E  assert 100 > 100
test_compare.py创建的。创建一个新的测试文件 AssertionError
================================= 1 failed, 2 passed in 0.04 seconds 
=================================