Yii2. Тестирование для новичков

Главная  >>  Linux  >>  Yii2. Тестирование для новичков

Тестирование — неотъемлемый и неминуемый процесс для разработчиков. Честно говоря, долгое время сам обходился без него — делал серьезные, большие проекты, но постоянно на продакшне натыкался на одни и те же грабли — сообщения и звонки «Вот это не работает», при том что «Вчера все работало, как надо», а правок никто не вносил.

Эти ситуации связаны с множеством аспектов, каких-то неучтенных, элементарных мелочей, нелогичных действий пользователей на сайте и т.д. В общем, кратко говоря — тестирование наше все. Только правильно написанные тесты способны уверить Вас, что Ваша работа сделана правильно и качественно.. А это — залог хорошего сна программиста :).

Итак, начнем. Этой статьей я начинаю цикл статей по тестированию — все манипуляции я буду проводить, конечно же, на базе любимого Yii2.

Лучшее в мире тестирования — это codeception, поддержка которого, конечно же, присутствует и в Yii (к слову говоря 1 и 2 версии).

Глобальная установка codeception

Устанавливать будем через Composer. Что это такое, зачем он нужен и как с ним работать я писал ранее.
Выполните в терминале следующие команды. Они глобально установят codeception.

Правки переменной $PATH

После утсановки пакетов при помощи Composer установка происходит в папку /home/%USERNAME/.composer/vendor/bin. Для того, чтобы система находила команды в этой папке её необходимо добавить в переменную $PATH.

Не забудьте перелогиниться, чтобы изменения вступили в силу.

ВАЖНО!

Для правильно работы codeception должен быть установлен CURL. Если его у Вас нет — выполните следующие команды, они установт CURL и перезагрузат Ваш сервер.

Выполняем запуск тестов

В терминале перейдите в папку Вашего yii2-проекта, в папку tests и выполните команду:

После этого можно выполнять, собственно запуск тестирования:

Если есть необходимость — можно настроить тестирование в файлах codeception.yml и acceptance.suite.yml. Детально о тестировании мы поговорим позже, а сейчас просто убедитесь в правильно указанном параметре URL Вашего проекта — по умолчанию там http://localhost…

ПРИМЕЧАНИЕ!

Если после всего выполненного Вы в папке проекта получаете сообщение, что команда не найдена — попробуйте выполнять команды в следующем формате: