MrB*_*Win 6 php phpunit codeception
在场景运行时是否可以记录或输出任何用户数据?我知道php代码在每次运行时执行两次,如何在第二步中看到变量的值?
codecept_debug($var);
Run Code Online (Sandbox Code Playgroud)
并在"调试模式"中运行codecept来查看它:
./vendor/bin/codecept run -d
Run Code Online (Sandbox Code Playgroud)
如果要确保不仅在调试模式下显示var:
$t = ob_get_clean(); // get current output buffer and stopping output buffering
var_dump($var); // show what we need
ob_start(); // start output buffering
echo($t); // restore output buffer
Run Code Online (Sandbox Code Playgroud)
您可以将此代码移出到外部库.
<?php
use Codeception\Extension\Logger;
if ($scenario->running()) {
Logger::log((string)$var);
}
?>
Run Code Online (Sandbox Code Playgroud)
请参阅文档
关于查看变量值,如果它是标量数据,最好的方法是类型转换为字符串,如果它是数组,则访问数组索引/键等。但是有一个未记录的方法 $var->__value() ,您可以使用它进行调试,但不应在测试中依赖它