【发布时间】:2014-06-04 06:58:03
【问题描述】:
我正在尝试在 PHPStorm 中执行我的 PHPUnit 测试用例。
我已经在项目的根目录中添加了 composer.phar,并将其绑定到我的 PHPStorm 配置中。
现在我右键单击phpunit.xml.dist 并选择运行..
该模块利用了我使用以下行编写的 Logger 模块
// Error occurred, begin a logfile
$logger = new Logger();
$writer = new Stream('data/logs/services-api.log');
$logger->addWriter($writer);s
这在 Apache、NGinx 等上运行时效果很好......
但在 PHPunit 中,它似乎没有达到我的预期。
```
Zend\Log\Exception\RuntimeException : "data/logs/services-api.log" cannot be opened with mode "a"
#0 ~ZendProject/module/Common/src/Common/Listeners/ApiErrorListener.php(31): Zend\Log\Writer\Stream->__construct('data/logs/servi...')
#1 [internal function]: Common\Listeners\ApiErrorListener::onRender(Object(Zend\Mvc\MvcEvent))
```
我知道 data\logs 文件夹是可写的,因为这段代码在 Apache 上的 ZendFramework 中运行良好......我猜我需要以某种方式修改我的 Bootstrap.php?
如何调试此路径,更重要的是重构我的 PATH(s) 以用于生产和 PHPUnit 调用?
编辑:由于这个提示,我开始输出我当前的工作目录
https://stackoverflow.com/a/7493389/389976
public function setUp()
{
$this->expectOutputString('');
print_r("Current Working Directory = " . getcwd());
print "";
...
}
给我一些输出...
Current Working Directory = ~ZendProject/module/ActivityWall/test
如何正确修改 CWD 以便 PHPunit 可以正确记录?我猜在 BootStrap.php 但是...?
【问题讨论】:
标签: php zend-framework2 phpunit