Печать отладочной информации в консоль в Codeception
очень толстый вопрос, но есть ли способ распечатать ваши собственные отладочные сообщения на консоли в Codeception? Я имею в виду сообщения, которые не имеют ничего общего с утверждениями, исключительно для отладки самих тестов (например, как вы var_dump()
переменная в любом обычном веб-сайте PHP)
Я уже пробовал var_dump()
, echo
и print
но безрезультатно. Используя WebDebug
' s makeAResponseDump()
также не дает требуемых результатов, я просто хочу видеть содержимое моей переменной без необходимости запускать отладчик, например xdebug.
6 ответов
посмотреть отладка, который сказал
вы можете распечатать любую информацию внутри теста с помощью функции codecept_debug.
и я использую его в моем * Cept класс:
codecept_debug($myVar);
ваш отладочный вывод виден только при запуске с --debug (- v не показывает его, но-vv и-vvv делают):
codecept run --debug
и выход выглядел так:
Validate MyEntity table insert (MyCept)
Scenario:
* I persist entity "AppBundle\Entity\MyEntity"
AppBundle\Entity\MyEntity Object
(
[Id:AppBundle\Entity\MyEntity:private] => 1
[Description:AppBundle\Entity\MyEntity:private] => Description
)
PASSED
кажется, я нашел способ обойти проблему, используя вспомогательный класс:
class WebHelper extends \Codeception\Module
{
public function seeMyVar($var){
$this->debug($var);
}
}
и вызов класса как такового:
$foo = array('one','two');
$I->seeMyVar($foo);
затем я получаю отладочный вывод, который я ищу
I see my var "lambda function"
Array
(
[0] => one
[1] => two
)
Я приму это как временное решение, однако я хотел бы сохранить свои утверждения чистыми и не загромождать их var_dumps, обновленными до тестовых функций, поэтому, если у кого-то есть концептуально правильное решение, пожалуйста, отправьте
или вы можете использовать команды управления многословием, такие как:
codecept run -vvv
каждая v
увеличивает многословность вывода (по умолчанию очень тихо).
по умолчанию Codeception говорит, что была ошибка, но не показывает ее подробно. Однако согласно этот блог adding --debug показывает ошибки подробно.
codecept run --debug