Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update guide-ru/test-environment-setup.md #20102

Draft
wants to merge 1 commit into
base: test-docs-improvements
Choose a base branch
from
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
62 changes: 6 additions & 56 deletions docs/guide-ru/test-environment-setup.md
@@ -1,8 +1,6 @@
Настройка тестового окружения
=============================

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

Yii 2 официально поддерживает интеграцию с фреймворком для тестирования [`Codeception`](https://github.com/Codeception/Codeception),
который позволяет вам проводить следующие типы тестов:

Expand All @@ -14,60 +12,12 @@ Yii 2 официально поддерживает интеграцию с фр
[`yii2-basic`](https://github.com/yiisoft/yii2-app-basic) и
[`yii2-advanced`](https://github.com/yiisoft/yii2-app-advanced).

Для того, чтобы запустить тесты, необходимо установить [Codeception](https://github.com/Codeception/Codeception).
Сделать это можно как локально, то есть только для текущего проекта, так и глобально для компьютера разработчика.

Для локальной установки используйте следующие команды:
Codeception поставляется предустановленным как часть проектных шаблонов basic и 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`.
На выходе вы должны получить:

composer require --dev codeception/codeception
composer require --dev codeception/specify
composer require --dev codeception/verify
```
Changed current directory to <directory>
```

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

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

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

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

```
<VirtualHost *:80>
DocumentRoot "path/to/basic/web"
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`.