Pytest
  • Введение
  • Пример тестирования
  • fixture (Фикстуры)
    • Параметризация
    • декораторы в питоне
    • Пример использования
  • 📚Практика
    • API OpenWeatherMap
    • API OMDBapi
  • scope
  • Запуск тестов через терминал
    • пример иерархии каталогов для организации тестов и их запуска с помощью Pytest
  • argparse
    • Создание интерфейса командной строки
Powered by GitBook
On this page

Введение

Вот основные шаги по написанию тестов с использованием pytest:

  1. Установка pytest: Убедитесь, что у вас установлен pytest. Если нет, установите его с помощью pip:

    pip install pytest
  2. Структура проекта: Создайте структуру проекта. Обычно, тесты размещают в отдельной директории, например, tests, а файлы тестов имеют префикс test_. Например:

    my_project/
    ├── my_module.py
    └── tests/
        ├── __init__.py
        └── test_my_module.py
  3. Написание тестов: Создайте файл тестов, например, test_my_module.py, и определите тестовые функции. Тестовые функции должны начинаться с префикса test_. Пример:

    import pytest
    # test_my_module.py
    from my_module import add
    
    def test_addition():
        assert add(1, 2) == 3
    
    def test_subtraction():
        assert add(5, 3) == 2

    В этом примере предполагается, что у вас есть файл my_module.py с функцией add, которую вы тестируете.

  4. Запуск тестов: Откройте терминал в корневой директории вашего проекта и выполните команду:

    pytest test_my_module.py

    pytest автоматически найдет и выполнит все тесты в директории tests.

  5. Утверждения (assertions): Используйте утверждения (assert) для проверки ожидаемых результатов ваших тестов. Если утверждение истинно, тест проходит; если ложно, тест считается неудачным.

    assert add(1, 2) == 3

    Если утверждение не проходит, pytest выведет подробную информацию о том, что пошло не так.

Это основы написания тестов с использованием pytest. Фреймворк предоставляет множество возможностей для управления тестами, включая параметризацию, фикстуры и многие другие возможности. Для получения более подробной информации о pytest, рекомендуется прочитать официальную документацию.

NextПример тестирования

Last updated 1 year ago