Настройка тестового окружения Yii 2
Настройка тестового окружения Yii 2

Настройка тестового окружения

Note: Данный раздел находится в разработке.

Yii 2 официально поддерживает интеграцию с фреймворком для тестирования Codeception, который позволяет вам проводить следующие типы тестов:

Старт! Честный VDS/VPS, на котором «Лунная База» живет уже 20+ лет

Задумываетесь о том, чтобы поднять свой pet-проект, сайт клиента или настроить окружение для разработки? Уже пора подумать, где арендовать железо.

Лунная База хостится на FirstVDS более 20 лет. Мыслей о том, чтобы перебраться на другой хостинг, не было ни разу (хотя опыт работы с другими вариантами, конечно, есть).

Бывали разные ситуации, но они бывают на любом железе. Главное, что нужно понять: здесь нет маркетинговой шелухи и сказок про «мы всё сделаем за вас». Если вы берете VDS — вам дают полный root, возможность накатить любую ОС и не лезут в ваши конфиги.

Если в саппорт написать с вопросом по вашему коду и получить ответ: «Читайте документацию и разбирайтесь сами» или «Обратитесь к профильному специалисту» — это не повод обижаться. Это повод углубить свои знания в DevOps и сайтостроении! Бегите от тех, кто пообещает: «Мы всё чиним и настраиваем абсолютно бесплатно!». Никто никогда не работает «по доброте душевной» в ущерб себе, а бесплатный сыр в администрировании обычно заканчивается сломанной базой данных.

Что по факту: Гибкое масштабирование ядер и RAM, экономия по сравнению с физическими серверами и адекватная панель ispmanager, если она вам нужна.



Все три типа тестов представлены в шаблонах проектов yii2-basic и yii2-advanced.

Для того, чтобы запустить тесты необходимо установить Codeception. Сделать это можно как локально, то есть только для текущего проекта, так и глобально для компьютера разработчика.

Для локальной установки используйте следующие команды:

composer require "codeception/codeception=2.1.*"
composer require "codeception/specify=*"
composer require "codeception/verify=*"

Для глобальной установки необходимо добавить директиву global:

composer global require "codeception/codeception=2.1.*"
composer global require "codeception/specify=*"
composer global require "codeception/verify=*"

Если вы никогда не пользовались Composer для установки глобальных пакетов, запустите composer global status. На выходе вы должны получить:

Changed current directory to <directory>

Затем <directory>/vendor/bin добавьте в переменную окружения PATH. После этого можно использовать codecept глобально из командной строки.

Note: глобальная установка позволяет вам использовать Codeception для всех проектов на компьютере разработчика путём запуска команды codecept без указания пути. Тем не менее, данный подход может не подойти. К примеру, в двух разных проектах может потребоваться установить разные версии Codeception. Для простоты все команды в разделах про тестирование используются так, будто Codeception установлен глобально.

Настройка веб-сервера Apache

Если вы используете Apache и настроили его как описано в разделе «Установка Yii», то для тестов вам необходимо создать отдельный виртуальный хост который будет работать с той же папкой, но использовать входной скрипт index-test.php:

<VirtualHost *:80>
    DocumentRoot "path/to/basic/webb"
    ServerName mysite-test
    <Directory "path/to/basic/web">
        Order Allow,Deny
        Allow from all
        AddDefaultCharset utf-8
        DirectoryIndex index-test.php
        RewriteEngine on
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule . index-test.php
    </Directory>
</VirtualHost>

Так мы укажем веб серверу перенаправлять все запросы на скрипт index-test.php.

Note: Обратите внимание, что здесь мы указываем параметр DirectoryIndex, помимо тех параметров, которые были указаны для первого хоста. Это сделано с той целью, чтобы при обращении к главной странице по адресу mysite-test также использовался бы скрипт index-test.php.

Самый честный хостинг за 20+ лет существования Лунной Базы

Задумываешься о том, чтобы поднять свой сайт в Интернете? Уже пора подумать о том, какой хостинг выбрать?

Лунная База хостится 20+ лет на firstDVS. При этом, мыслей о том, чтобы перебраться на другой хостинг не было. (Но, при этом есть опыт работы с другими вариантами.)

Бывали с firstDVS разные ситуации, но, они бывают на всех хостингах. Единственное, что тут важно понять, - это то, что никто ничего тебе не будет впаривать... Но, и работать за тебя тоже никто не станет. Если в саппорт ответили: «Читайте по ссылке и разбирайтесь сами...» или вообще «Обратитесь за помощью к специалисту», - это повод углубить свои знания в области сайтостроения, а не бежать к тем, что пообещают: «Мы всё чиним и всё делаем за своих клиентов абсолютно бесплатно!» Никто никогда ничего ни за кого "по доброте душевной" не делал, не делает и не будет делать!

Старт! Горячий старт на просторы интернета
Старт! Горячий старт на просторы интернета
Старт! Меню