首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Xdebug调试共欺骗测试

用Xdebug调试共欺骗测试
EN

Stack Overflow用户
提问于 2013-09-04 06:26:02
回答 6查看 10.9K关注 0票数 26

我编写了一些API测试,使用的是Codeception的ApiGuy。现在,我想在PhpStorm 7中为测试调试设置断点,但是不知道如何在$ vendor/bin/codecept run之后启动调试会话。我知道--debug选项,但这不是我想要的。

你有什么想法吗?提前感谢!

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2013-12-22 13:10:57

我也遇到了同样的问题。似乎comes只附带了一个命令行工具,不能进行调试。最后,我编写了自己的PHP,这基本上是codeception命令可执行文件的一个很小的副本。

实际上,在Linux中,您所要做的就是从codeception工具中删除shebang,以作为一个PHP脚本运行它。但是,由于其他命令(然后是codeception run )不太可能成为调试的主题,所以我准备了一个单独的PHP脚本。它只包含run选项:

代码语言:javascript
复制
<?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配置并选择上面创建的文件。请记住添加run参数:

就是这样。现在,您可以在IDE中运行测试,并将它们作为普通脚本进行调试。

票数 28
EN

Stack Overflow用户

发布于 2014-03-07 06:02:44

我使用codecept.phar文件,我发现这个文件确实有效。只需在控制台中键入此命令,然后运行协同欺骗测试:

代码语言:javascript
复制
export XDEBUG_CONFIG="idekey=session_name remote_host=localhost profiler_enable=1"
票数 21
EN

Stack Overflow用户

发布于 2017-01-31 11:31:13

我建议你用

代码语言:javascript
复制
php -dxdebug.remote_enable=1 -dxdebug.remote_autostart=On -dxdebug.idekey=YOUR_KEY -dxdebug.remote_host=YOUR_IP ../vendor/bin/codecept run
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18606807

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档