我最近安装了PHPUnit 3.6.10。
我不明白php.ini文件中的include_path有什么问题
正在使用的php.ini文件如下
Configuration File (php.ini) Path: /etc/php5/cli
Loaded Configuration File: /etc/php5/cli/php.ini
Scan for additional .ini files in: /etc/php5/cli/conf.d
Additional .ini files parsed: /etc/php5/cli/conf.d/curl.ini,
/etc/php5/cli/conf.d/mysql.ini,
/etc/php5/cli/conf.d/mysqli.ini,
/etc/php5/cli/conf.d/pdo.ini,
/etc/php5/cli/conf.d/pdo_mysql.ini
Apache2使用的另一个文件是/etc/php5/apache2/php.ini
我已在cli/php.ini
和apache2/php.ini
我在php.ini中写的包含路径是
include_path = ".:/home/username/pear/share/pear:/usr/share/php
之前的包含路径是
include_path =。:/ usr / share / php:/ usr / share / pear
但PHPUnit的错误形式就是这样
PHP Warning: require_once(PHPUnit/Framework.php): failed to open stream: No such file or directory in /home/username/public_html/PHP-Library/APITest.php on line 14
PHP Fatal error: require_once(): Failed opening required 'PHPUnit/Framework.php' (include_path='.:/home/username/pear/share/pear') in /home/username/public_html/PHP-Library/APITest.php on line 14
这是在APITest.php文件中写的
require_once 'PHPUnit/Framework.php';
有人可以解释问题是什么吗?还有其他我需要在php.ini中进行更改的地方吗?
更新
当我在命令
下运行时$ php -c /path/to/php.ini -r 'echo get_include_path()."\n";'
.:/usr/share/php:/usr/share/pear
更新2 当我删除require并扩展PHPUnit_Framework_TestCase时,我收到以下错误 在apache2日志中我找到了
[Sun Mar 11 14:54:58 2012] [error] [client 127.0.0.1] PHP Fatal error: Class 'PHPUnit_Framework_TestCase' not found in /home/username/public_html/phplib/APITest.php on line 15
答案 0 :(得分:1)
PHPUnit 3.6有自己的自动加载器,负责在不使用require
的情况下使所有类可用。只需在测试中扩展测试用例而不必担心PHPUnit。
class MyTest extends PHPUnit_Framework_TestCase { ... }
<强>更新强>
通过浏览器运行测试时,您将绕过设置自动加载器的phpunit
可执行文件。添加
require_once 'PHPUnit/Autoload.php';
到您的index.php
脚本(或运行测试的任何内容)。
答案 1 :(得分:0)
我必须在我的php.ini中添加以下内容:/ usr / share / php /
整个字符串在/etc/php5/apache2/php.ini中如下所示:
".:/usr/bin/php:/var/www/cakephp2/lib/:/var/www/cakephp2/:/usr/bin/phpunit:/usr/bin/pear:/usr/share/php/"
要确定将其链接到哪里,我就跑了
locate Autoload.php
从指向我的shell到/ usr / share / php / PHPUnit中安装了PHPUnit然后查看它试图包含的内容我得出结论我需要添加/ usr / share / php