使用 Xdebug 调试代码接收测试
2022-08-30 16:28:27
我用Codeception的ApiGuy编写了一些API测试。现在我想在我的PhpStorm 7中设置断点用于测试调试,但不知道如何在之后启动调试会话。我知道选择,但这并不是我想要的。$ vendor/bin/codecept run
--debug
你有什么想法吗?提前致谢!
我用Codeception的ApiGuy编写了一些API测试。现在我想在我的PhpStorm 7中设置断点用于测试调试,但不知道如何在之后启动调试会话。我知道选择,但这并不是我想要的。$ vendor/bin/codecept run
--debug
你有什么想法吗?提前致谢!
我遇到了同样的问题。似乎Codeception只附带了一个命令行工具,无法调试。我最终编写了自己的PHP运行器,它基本上是命令可执行文件的精简副本。codeception
实际上,在Linux中,你所要做的就是从工具中删除shebang,以将其作为PHP脚本运行。但是,由于其他命令不太可能成为调试的主题,因此我准备了一个单独的PHP脚本。它只包含以下选项:codeception
codeception run
run
<?php
/**
* Codeception PHP script runner
*/
require_once dirname(__FILE__).'/../vendor/codeception/codeception/autoload.php';
use Symfony\Component\Console\Application;
$app = new Application('Codeception', Codeception\Codecept::VERSION);
$app->add(new Codeception\Command\Run('run'));
$app->run();
完成此操作后,您可以像在PHPStorm中设置任何其他脚本一样设置调试脚本。所以去>:Select Run/Debug Configuration
Edit Configurations...
现在> .然后命名运行配置并选择上面创建的文件。请记住添加参数:Add New Configuration (Alt + Insert)
PHP Script
run
就是这样。现在,您可以从 IDE 中运行测试,并将它们作为普通脚本进行调试。
我使用codecept.phar文件,我发现这个文件确实有效。只需在控制台中键入以下命令,然后运行代码接收测试:
export XDEBUG_CONFIG="idekey=session_name remote_host=localhost profiler_enable=1"