При запуске теста PHPUnit я хотел бы иметь возможность выгружать вывод, чтобы я мог отлаживать одну или две вещи.
Я пробовал следующее (похоже на Руководство по PHPUnit пример);
class theTest extends PHPUnit_Framework_TestCase
{
/**
* @outputBuffering disabled
*/
public function testOutput() {
print_r("Hello World");
print "Ping";
echo "Pong";
$out = "Foo";
var_dump($out);
}
}
Со следующим результатом:
PHPUnit @package_version@ by Sebastian Bergmann.
.
Time: 0 seconds, Memory: 3.00Mb
OK (1 test, 0 assertions)
Обратите внимание, что ожидаемого результата нет.
Я использую HEAD-версии репозиториев git по состоянию на 19 сентября 2011 года.
Вывод php -version
:
$ php -version
PHP 5.2.9 (cli) (built: Dec 8 2010 11:36:37)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
with Xdebug v2.1.0, Copyright (c) 2002-2010, by Derick Rethans
Я что-то делаю неправильно, или это потенциально ошибка PHPUnit?
file_put_contents('php://stderr', $myDebugVar, FILE_APPEND);
, потому что у меня было сообщениеUse of undefined constant STDERR - assumed 'STDERR'
с fwrite. 19.11.2013STDOUT
вместоSTERR
28.02.2015STDOUT
перехватывается phpunit черезob_start()
(именно поэтому вы не можете простоecho
вещи в первую очередь). Это логика использованияSTDERR
01.03.2015STDERR
. Я используюPHPUnit 4.5.0
в строке cmd Windows. операторecho
не дает тех же результатов.echo
выводит данные, но только после того, как отобразится результат теста.fwrite(STDERR, 'string')
илиfwrite(STDOUT,'string')
дают те же результаты: вывод перед отображением результата теста. 01.03.2015--debug
и--verbose
) в контейнере Docker. Все остальное проглотил - даже лог пишет! 10.04.2019