Справочник · модуль 12 «Тесты»
Упавший тест
Если тест не прошёл, pytest показывает строчку с assert, ожидание и результат. Из них ясно, что чинить.
Сравнение из жизни
Как красная пометка учителя рядом с ошибкой.
Пример
$ pytest
============================= test session starts ==============================
platform linux -- Python 3.13.0, pytest-8.3.3, pluggy-1.5.0
rootdir: /home/bit/shop
collected 2 items
test_calc.py F. [100%]
=================================== FAILURES ===================================
___________________________________ test_add ___________________________________
def test_add():
> assert add(2, 3) == 5
E assert -1 == 5
E + where -1 = add(2, 3)
test_calc.py:5: AssertionError
=========================== short test summary info ============================
FAILED test_calc.py::test_add - assert -1 == 5
========================= 1 failed, 1 passed in 0.01s ==========================Учитель в уроке Теперь в функции ошибка: она вычитает вместо сложения. Вместо точки появилась буква F. Это значит, что тест упал. Ниже pytest показывает разбор. Строчка со стрелкой — упавший assert. Строчки с буквой E говорят: получили минус один, а ждали пять. Второй тест прошёл: ноль минус ноль тоже ноль. Поэтому тестов нужно несколько.
Запомнить
Упавший тест — как красная пометка учителя. Видно, что ждали и что получилось.
Тема из урока 12.2 «pytest» курса PythonAZ.