Тренинг
TDD в PHP

Test Driven Development (TDD) без сомнения является одной из наиболее полезных, но в то же время трудных для внедрения, инженерных практик. TDD предлагает писать тесты до того как реальный код появится в приложении, благодаря чему вы получаете лучший дизайн, больше фокусируетесь на функционале, имеете возможность проверить состояние своей работы и понять когда вы закончили. Но написание тестов перед кодом требует от разработчика изменения мышления и наличия большого опыта в тестировании. TDD может применяться на различных уровнях: юнит тестирование, интеграционное тестирование, приемочное тестирование.

Многие ошибочно считают, что TDD существенно замедляет разработку. Но на практике происходит обратное – когда команда имеет достаточный опыт в TDD, то скорость разработки увеличивается. Это происходит за счет того, что не пишется ненужный код, меньше переделывается дизайн приложения, меньше времени уходит на поиск и исправление проблем.

Данный тренинг поможет вам понять преимущества внедрения TDD на вашем проекте, сложности и пути их преодоления. Тренинг посвящён использованию модульного тестирования для улучшения процесса проектирования и разработки приложений на PHP. Будут расcмотрены инструменты, которые применяются для тестирования в PHP, и весь технологический процесс разработки, непрерывной интеграции и поставки web-приложения на PHP, которое будет разрабатываться в процессе тренинга. Также будут рассмотрены полезные практики и инструменты для облегчения работы по TDD. В результате прохождения тренинга вы:

  • Узнаете об основных концепциях и правилах TDD, преимуществах данного подхода
  • Получите практические навыки использования PHPUnit, оптимизации и рефакторингу тестов
  • На примере разработки полнофункционального приложения попробуете использовать TDD на различных уровнях
  • Рассмотрите пути внедрения TDD на проект и сложности, с которым можно столкнуться
  • Получите представление о полезных практиках и инструментах для TDD
Целевая аудитория

разработчики, тимлиды, менеджеры

Стоимость
$250
за участника
Продолжительность
16 часов
2 дня
Обед включен в стоимость тренинга
При групповой регистрации скидка

Детальная программа

  • День первый (теория)
    • Что такое TDD, в чём его польза
    • Методика работы по TDD, основные правила и принципы
    • Обзор существующих инструментов тестирования в PHP
  • День первый (практика)
    • Установка и первый запуск PHPUnit
    • Работа с опциями утилиты PHPUnit, запуск тестов выборочно
    • Конфигурационный файл phpunit.xml
    • Структура тестов
    • Тестирование исключений
    • Зависимые тесты
    • Провайдеры данных
    • Разработка методом TDD библиотеки статистических функций
  • День второй (теория)
    • TDD в web-разработке
    • Тестирование MVC
    • Использование mock-объектов
    • Подготовка тестовых данных
    • Оптимизация тестов
    • Поддержание актуальной структуры базы данных
    • Автоматизация локального тестирования
    • Непрерывная интеграция
  • День второй (практика)
    • Техпроцесс от рабочей копии до «боевого» сервера
    • Разработка методом TDD web-приложения с применением средств автоматизации и непрерывной интеграции
    • Командная разработка и обмен кодом в условиях TDD