2016-02-20 3 views
1

Я пытаюсь запустить приемочные испытания в расширенном приложении yii2. Из коробки приемные тесты терпят неудачу. Я только начну с первой проблемы: я думаю, что маршруты ошибочны, и я понятия не имею, где их исправить. Например, ошибка для около страницы:Как исправить маршрут для приемочных испытаний?

Can't be on page "/frontend/web/index-test.php/site/about": 
"/frontend/web/index-test.php/site/signup" 

Откуда у вас этот маршрут? Конечно, там нет страницы, этот маршрут - мусор. я попытался поместить его в браузер .. ничего .. конечно. Я хотел бы пройти через классы тестирования, чтобы посмотреть, что происходит, но я тоже не могу понять. У кого-нибудь есть идея? Я думаю, что если я смогу получить маршруты, по крайней мере, я могу где-то добраться.

ответ

1

Обновленный ответ:
Убедитесь, что вы запускаете php -S localhost:8080 от корня проекта, а не из каталога тест!

Я просто попробовал это и получил почти те же ошибки, что и вы.


Оригинальный ответ:

Из коробки, вам нужно будет сделать несколько вещей, прежде чем тесты могут быть запущены.

yii2-app-advanced tests readme

  1. Установить Codeception глобально.
  2. Создать тест db.
  3. Перейти к tests/codeception/config и посмотреть/редактировать config.php (смотри ниже)
  4. Run миграции: codeception/bin/yii migrate
  5. запустим веб-сервер: php -S localhost:8080
  6. Перейдите к каждому из каталогов в tests/codeception, что вы хотите проверить - как frontend
  7. Run codecept build
  8. Run codecept run

Он запускается, и он преуспевает из коробки - при условии, что вы не изменили код. :)
Если вы изменили какой-то код, тогда тесты ломаются, и вам придется исправить это.


tests/codeception/config/config.php:

'components' => [ 
    'db' => [ 
     'dsn' => 'mysql:host=localhost;dbname=name_of_test_db', 
    ], 

Edit:
Этот маршрут выглядит хорошо для меня, кстати. Я думаю, проблема заключается в том, что вы не запускали веб-сервер перед тем, как участвовать в тестах.

Вам может понадобиться, чтобы исправить свои корни документа, как описано здесь: Installation Guide

+0

Я сделал все вышеперечисленное, конечно, но, спасибо за то, что нашли время, чтобы снова перейти на него.Одна часть, которую у меня другая, заключается в том, что я использую другой веб-сервер, я использую MAMP на этой машине, поэтому то, что я сделал, было установлено URL-адресом PhpBrowser для имени хоста, которое я использую для этого проекта. Это неправильная часть? Во всяком случае, именно поэтому я «обнулял», пытаясь выяснить эту проблему маршрута; не использует ли он те же маршруты, что и обычное приложение? – dataskills

+0

Он использует тот же маршрут, что и обычное приложение, за исключением того, что он использует 'index-test.php' вместо' index.php' :) – jacmoe

+0

Попробуйте отменить настройку phpbrowser - это может быть так. Я просто оставляю эту настройку в покое, поскольку я обнаружил, что это все испортит. – jacmoe

Смежные вопросы