Учебники

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 
===================================

Чтобы выполнить тесты из определенного файла, используйте следующий синтаксис —

pytest <filename> -v

Теперь выполните следующую команду —

pytest test_compare.py -v

Приведенная выше команда выполнит тесты только из файла test_compare.py. Наш результат будет —