我正在尝试PHPUnit的一些所谓好的功能,但我无法生成一个奇怪的代码覆盖率报告。我得到的是:
rolf@dev ~/projects/current/tests $ scripts/phpunit --configuration $PROJECTS/current/tests/conf/inc/tests.xml
[...]
Generating code coverage report, this may take a moment.
[...]
Fatal error: require_once(): Failed opening required 'lib/DataSource.php' (include_path=':::') in path/to/lib/WS/DataParser.php on line 10
但是,在这个类中,定义了一个特定的包含路径,并且在启动应用程序时,require_once的工作方式就像一个魅力。
可能是PHPUnit无法解决包含路径吗?
提前致谢并且累积了很长时间!
Rolf
答案 0 :(得分:1)
如果您使用的是最新的PHPUNIT(3.5+),可能是因为Sebastion已经开始在程序中使用自动加载器。
你必须添加一行
spl_autoload_register('__autoload');
在创建/包含/需要__autoload()
函数后
因此,例如,具有我的自动加载器的文件称为函数。在我的引导程序中,我执行以下操作:
require_once(ROOT_PATH.'/lib/utils/functions.php');
spl_autoload_register('__autoload');
答案 1 :(得分:0)
您是否在任何测试/代码中更改了include_path?因为它看起来很奇怪(:::)