【发布时间】:2011-03-10 23:13:22
【问题描述】:
我知道这可能会被问到很多问题,但我已经很长时间没有使用 PHP 并且我发现自己再次与它的路径行为和包含问题搏斗。
我已经按照建议通过 Pear 安装了 PHPUnit,我将 Pear 目录添加到了我的 php.ini 文件中,这样我就可以全局包含 PHPUnit.php。但是,PHPUnit.php 需要在它自己的目录中包含几个文件,当我在我的测试目录中引用 PHPUnit.php 时:
require_once 'PHPUnit.php';
它尝试包含那些相对于测试目录或 php.ini 中指定的 Pear 目录的文件。
Fatal error: require_once() [function.require]: Failed opening required 'PHPUnit/TestCase.php'
(include_path='.:/home/data/pear/php') in /[snip]/domains/test.domainname.com/html/project/tests/PHPUnit.php on line 47
我记得以前用 PHP 处理过这些问题,但我觉得我不应该修改 PHPUnit 包含文件的路径来完成这项工作...
【问题讨论】:
-
不知道这是否重要,但
PHPUnit_TestCase适用于 PHPUnit 1.x(或其他东西,至少 PHPUnit_Framework_TestCase。 -
并且无论如何你都不应该“需要'PHPUnit.php'。这将为你完成。只是为了确保:你做了'pear install phpunit/PHPUnit'(版本3.5.x)和不仅仅是'pear install phpunit',因为那是一个非常旧的版本:)
-
你知道,我刚刚意识到我一直在查看 Pear 网站上的文档,这些文档已经过时了,难怪这给我带来了麻烦,似乎在自从我上次使用它以来!
标签: php unit-testing path phpunit