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 和 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:3: AssertionError
_______________________________________________ testsquare
_______________________________________________
def testsquare():
num = 7
> assert 7*7 == 40
E assert (7 * 7) == 40
test_square.py:9: AssertionError
=================================== 2 failed, 3 passed in 0.07 seconds
===================================
To execute the tests from a specific file, use the following syntax −
pytest <filename> -v
现在,运行以下命令 –
pytest test_compare.py -v
上述命令将只执行文件 test_compare.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:3: AssertionError
================================= 1 failed, 2 passed in 0.04 seconds
=================================