У меня возникли проблемы с правильной настройкой модульного тестирования в Kohana 3.2.
Я установил PHPUnit. Я изменил загрузчик, чтобы активировать модуль unittest Kohana. Я также изменил файл index.php, чтобы он выглядел так:
if ( ! defined('SUPPRESS_REQUEST'))
{
echo Request::factory()
->execute()
->send_headers()
->body();
}
Я создал папку test в папке моего приложения. В него я вставил файл phpunit.xml, который выглядит так:
<phpunit colors="true" bootstrap="../../index.php">
<testsuites>
<testsuite name="Kohana Tests">
<directory>./</directory>
</testsuite>
</testsuites>
I am having two problems (the first one is the one I really need an answer to):
1- Когда я захожу в тесты из командной строки и пытаюсь запустить phpunit, кажется, что SUPPRESS_REQUEST никогда не устанавливается в true. Запрос выполняется, поэтому тесты не выполняются. Единственный способ успешно запустить тесты — это на мгновение закомментировать всю строку Request::factory() в index.php. Кто-нибудь знает, как обойти эту проблему? Если я должен где-то добавить определение ('SUPPRESS_REQUEST', true), где я должен это сделать? Я новичок в Kohana и PHPUnit.
2- PHPUnit жалуется, что переменная REMOTE_ADDR не установлена.
PHP Notice: Undefined index: REMOTE_ADDR in
/Users/**/Sites/root/application/bootstrap.php on line 76
На самом деле это не большая проблема на данный момент, поскольку тесты, похоже, все еще выполняются, несмотря на это, но мне интересно, знает ли кто-нибудь, должен ли я устанавливать эту переменную где-то конкретно.