Интеграционное тестирование с pytest

Введение в тестирование на Python

Alexander Levin

Data Scientist

Что такое интеграционное тестирование?

  • Интеграционное тестирование — метод тестирования ПО, позволяющий проверить корректность взаимодействия компонентов.

  • Интеграция — взаимодействие двух или более модулей внутри системы.

диаграмма примера интеграции

Введение в тестирование на Python

Интеграции в реальных проектах

Примеры:

  • Кабель питания
  • Интернет-соединение
  • Драйвер чтения файлов
  • Подключение к базе данных
  • Интеграция через API
Введение в тестирование на Python

Что может пойти не так

Возможные проблемы интеграции:

  • Потеря соединения
  • Потеря данных
  • Задержки взаимодействия
  • Низкая пропускная способность
  • Конфликты версий
  • Несовместимость интерфейсов
  • Другие
Введение в тестирование на Python

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

import pytest, os

@pytest.fixture
def setup_file():
    # Create temporary file
    file = "test_file.txt"
    with open(file, "w") as f1:
        f1.write("Test data 1")
    yield file
    os.remove(file)

def test_fs(setup_file):
    file = setup_file
    # Check that the file was created successfully
    assert os.path.exists(file)
Введение в тестирование на Python

Итоги

  • Интеграционное тестирование — метод тестирования ПО; позволяет убедиться, что интеграция работает корректно.

  • Реальные проекты содержат множество различных интеграций.

  • Интеграционное тестирование помогает предотвратить многие потенциальные проблемы.

  • Пример: проверка интеграции между Python и файловой системой.

Введение в тестирование на Python

Давайте потренируемся!

Введение в тестирование на Python

Preparing Video For Download...