Открой безлимитный доступ ко всем скринкастам и получай большие скидки на все наши мероприятия:
Бесплатный
0/ мес.

Ограниченный доступ
только к Free-видео

Активен
Подписчик
500/ мес.

Безлимитный доступ
ко всем скринкастам

Принимаем оплату российскими и иностранными картами, системами МИР Pay, Яндекс Pay и Tinkoff Pay.

Побочные эффекты и Unit-тесты

Мы написали функцию определения языка с прямым обращением к суперглобальным массивам PHP-FPM. Но такой подход неуниверсален и неудобен при тестировании. Сегодня попробуем к этой функции написать unit-тесты и найти проблемы использования глобальных переменных и синглтонов. Познакомимся с неудобством побочных эффектов и с тестированием чистых функций:

  • 00:00:43 Проверка значения по умолчанию
  • 00:01:37 Переопределение параметров запроса
  • 00:02:11 Конфликты глобальных переменных
  • 00:04:36 Проверка Cookie и заголовков
  • 00:05:48 Неявность зависимостей
  • 00:06:53 Сложность контроля синглтонов
  • 00:08:15 Побочные эффекты
  • 00:08:41 Функции без побочных эффектов
  • 00:09:28 Тестирование чистых функций
  • 00:11:15 Чистота сложных функций
  • 00:12:15 Очистка функций
  • 00:14:16 Передача значения или фабрики
  • 00:16:19 Что не влияет на результат
  • 00:17:53 Что делать дальше

И в следующем эпизоде отрефакторим код, чтобы всё это заработало на практике.

Скрытый контент (код, слайды, ...) для подписчиков. Открыть →
Дмитрий Елисеев
elisdn.ru
Комментарии (0)
Зарегистрируйтесь или войдите чтобы оставить комментарий

Или войти через:

Yandex
MailRu
GitHub
Google