Как работает тестирование функций в Python? — Q&A Хекслет
2026-02-26 19:54 Diff

В Python есть несколько способов тестирования функций. В основном используют либо встроенный модуль unittests либо библиотеку pytest

import unittest def add_numbers(a, b): return a + b class TestAddNumbers(unittest.TestCase): def test_add_positive_numbers(self): self.assertEqual(add_numbers(1, 2), 3) def test_add_negative_numbers(self): self.assertEqual(add_numbers(-1, -1), -2) def test_add_zero(self): self.assertEqual(add_numbers(5, 0), 5) if __name__ == '__main__': unittest.main()

Или на pytest

# test_functions.py def add_numbers(a, b): return a + b def test_add_numbers(): assert add_numbers(1, 2) == 3 assert add_numbers(-1, -1) == -2 assert add_numbers(5, 0) == 5

Какую бы библиотеку вы не выбрали, придерживайтесь всегда основых принципов тестирования:

  • Тесты должны быть изолированными
  • Каждый тест проверяет одну конкретную функциональность
  • Тесты должны быть воспроизводимыми
  • Используйте понятные имена тестов
  • Тестируйте пограничные случаи
  • Тестируйте как позитивные, так и негативные сценарии