PHPUnit不';找不到Framework.php
现在已经两天了,我一直在努力让phpunit在我的OSX上工作。我正在MAMP安装中运行php 我已经通过PEAR安装了它,并且具有所有依赖项。 phpunit--version命令正在工作并显示:PHPUnit不';找不到Framework.php,phpunit,mamp,Phpunit,Mamp,现在已经两天了,我一直在努力让phpunit在我的OSX上工作。我正在MAMP安装中运行php 我已经通过PEAR安装了它,并且具有所有依赖项。 phpunit--version命令正在工作并显示: $ phpunit --version PHPUnit 3.6.10 by Sebastian Bergmann. 但当我从命令行运行测试时,它显示: Warning: require_once(/Applications/MAMP/bin/php/php5.3.6/lib/php/PHPUnit
$ phpunit --version
PHPUnit 3.6.10 by Sebastian Bergmann.
但当我从命令行运行测试时,它显示:
Warning: require_once(/Applications/MAMP/bin/php/php5.3.6/lib/php/PHPUnit/Framework): failed to open stream: No such file or directory in /Users/magalie/Sites/HelloWorld/HelloWorldTest.php on line 3
Call Stack:
0.0028 632128 1. {main}() /Applications/MAMP/bin/php/php5.3.6/bin/phpunit:0
0.0078 1161288 2. PHPUnit_TextUI_Command::main() /Applications/MAMP/bin/php/php5.3.6/bin/phpunit:46
0.0078 1162016 3. PHPUnit_TextUI_Command->run() /Applications/MAMP/bin/php/php5.3.6/lib/php/PHPUnit/TextUI/Command.php:130
0.1109 1793352 4. PHPUnit_Runner_BaseTestRunner->getTest() /Applications/MAMP/bin/php/php5.3.6/lib/php/PHPUnit/TextUI/Command.php:150
0.1109 1793352 5. PHPUnit_Runner_BaseTestRunner->loadSuiteClass() /Applications/MAMP/bin/php/php5.3.6/lib/php/PHPUnit/Runner/BaseTestRunner.php:104
0.1115 1837832 6. PHPUnit_Runner_StandardTestSuiteLoader->load() /Applications/MAMP/bin/php/php5.3.6/lib/php/PHPUnit/Runner/BaseTestRunner.php:168
0.1126 1983864 7. PHPUnit_Util_Fileloader::checkAndLoad() /Applications/MAMP/bin/php/php5.3.6/lib/php/PHPUnit/Runner/StandardTestSuiteLoader.php:78
0.1127 1983984 8. PHPUnit_Util_Fileloader::load() /Applications/MAMP/bin/php/php5.3.6/lib/php/PHPUnit/Util/Fileloader.php:79
0.1128 1994704 9. include_once('/Users/magalie/Sites/HelloWorld/HelloWorldTest.php') /Applications/MAMP/bin/php/php5.3.6/lib/php/PHPUnit/Util/Fileloader.php:95
Fatal error: require_once(): Failed opening required 'PHPUnit/Framework' (include_path='.:/Applications/MAMP/bin/php/php5.3.6/lib/php:/Applications/MAMP/bin/php5.3/lib/php/PEAR:/usr/lib/php') in /Users/magalie/Sites/HelloWorld/HelloWorldTest.php on line 3
Call Stack:
0.0028 632128 1. {main}() /Applications/MAMP/bin/php/php5.3.6/bin/phpunit:0
0.0078 1161288 2. PHPUnit_TextUI_Command::main() /Applications/MAMP/bin/php/php5.3.6/bin/phpunit:46
0.0078 1162016 3. PHPUnit_TextUI_Command->run() /Applications/MAMP/bin/php/php5.3.6/lib/php/PHPUnit/TextUI/Command.php:130
0.1109 1793352 4. PHPUnit_Runner_BaseTestRunner->getTest() /Applications/MAMP/bin/php/php5.3.6/lib/php/PHPUnit/TextUI/Command.php:150
0.1109 1793352 5. PHPUnit_Runner_BaseTestRunner->loadSuiteClass() /Applications/MAMP/bin/php/php5.3.6/lib/php/PHPUnit/Runner/BaseTestRunner.php:104
0.1115 1837832 6. PHPUnit_Runner_StandardTestSuiteLoader->load() /Applications/MAMP/bin/php/php5.3.6/lib/php/PHPUnit/Runner/BaseTestRunner.php:168
0.1126 1983864 7. PHPUnit_Util_Fileloader::checkAndLoad() /Applications/MAMP/bin/php/php5.3.6/lib/php/PHPUnit/Runner/StandardTestSuiteLoader.php:78
0.1127 1983984 8. PHPUnit_Util_Fileloader::load() /Applications/MAMP/bin/php/php5.3.6/lib/php/PHPUnit/Util/Fileloader.php:79
0.1128 1994704 9. include_once('/Users/magalie/Sites/HelloWorld/HelloWorldTest.php') /Applications/MAMP/bin/php/php5.3.6/lib/php/PHPUnit/Util/Fileloader.php:95
下面是pear的配置
Configuration (channel pear.php.net):
=====================================
Auto-discover new Channels auto_discover 1
Default Channel default_channel pear.php.net
HTTP Proxy Server Address http_proxy <not set>
PEAR server [DEPRECATED] master_server pear.php.net
Default Channel Mirror preferred_mirror pear.php.net
Remote Configuration File remote_config <not set>
PEAR executables directory bin_dir /Applications/MAMP/bin/php/php5.3.6/bin
PEAR documentation directory doc_dir /Applications/MAMP/bin/php/php5.3.6/lib/php/doc
PHP extension directory ext_dir /Applications/MAMP/bin/php/php5.3.6/lib/php/extensions
PEAR directory php_dir /Applications/MAMP/bin/php/php5.3.6/lib/php/
PEAR Installer cache directory cache_dir /var/folders/qH/qHdMKNY5GsywPNMBPX-T7U+++TI/-Tmp-//pear/cache
PEAR configuration file cfg_dir /Applications/MAMP/bin/php/php5.3.6/lib/php/cfg
directory
PEAR data directory data_dir /Applications/MAMP/bin/php/php5.3.6/lib/php/data
PEAR Installer download download_dir /var/folders/qH/qHdMKNY5GsywPNMBPX-T7U+++TI/-Tmp-//pear/download
directory
PHP CLI/CGI binary php_bin /Applications/MAMP/bin/php/php5.3.6/bin/php
php.ini location php_ini /Applications/MAMP/bin/php/php5.3.6/conf/php.ini
--program-prefix passed to php_prefix <not set>
PHP's ./configure
--program-suffix passed to php_suffix <not set>
PHP's ./configure
PEAR Installer temp directory temp_dir /var/folders/qH/qHdMKNY5GsywPNMBPX-T7U+++TI/-Tmp-//pear/temp
PEAR test directory test_dir /Applications/MAMP/bin/php/php5.3.6/lib/php/tests
PEAR www files directory www_dir /Applications/MAMP/bin/php/php5.3.6/lib/php/www
Cache TimeToLive cache_ttl 3600
Preferred Package State preferred_state stable
Unix file mask umask 22
Debug Log Level verbose 1
PEAR password (for password <not set>
maintainers)
Signature Handling Program sig_bin /usr/local/bin/gpg
Signature Key Directory sig_keydir /Applications/MAMP/bin/php/php5.3.6/pearkeys
Signature Key Id sig_keyid <not set>
Package Signature Type sig_type gpg
PEAR username (for username <not set>
maintainers)
User Configuration File Filename /Users/magalie/.pearrc
System Configuration File Filename /Applications/MAMP/bin/php/php5.3.6/conf/pear.conf
配置(通道pear.php.net):
=====================================
自动发现新频道自动发现1
默认频道默认频道pear.php.net
HTTP代理服务器地址HTTP\U代理
PEAR服务器[已弃用]主服务器PEAR.php.net
默认通道镜像首选\u Mirror pear.php.net
远程配置文件远程配置
PEAR可执行文件目录bin_dir/Applications/MAMP/bin/php/php5.3.6/bin
PEAR文档目录doc_dir/Applications/MAMP/bin/php/php5.3.6/lib/php/doc
PHP扩展目录ext_dir/Applications/MAMP/bin/PHP/php5.3.6/lib/PHP/extensions
PEAR目录php_dir/Applications/MAMP/bin/php/php5.3.6/lib/php/
PEAR安装程序缓存目录cache_dir/var/folders/qH/qHdMKNY5GsywPNMBPX-T7U+++TI/-Tmp-//PEAR/cache
PEAR配置文件cfg_dir/Applications/MAMP/bin/php/php5.3.6/lib/php/cfg
目录
PEAR数据目录data_dir/Applications/MAMP/bin/php/php5.3.6/lib/php/data
PEAR安装程序下载\u dir/var/folders/qH/qHdMKNY5GsywPNMBPX-T7U+++TI/-Tmp-//PEAR/下载
目录
PHP CLI/CGI二进制PHP_bin/Applications/MAMP/bin/PHP/php5.3.6/bin/PHP
php.ini位置php_ini/Applications/MAMP/bin/php/php5.3.6/conf/php.ini
--传递给php_前缀的程序前缀
PHP的./configure
--传递给php_后缀的程序后缀
PHP的./configure
PEAR安装程序临时目录temp_dir/var/folders/qH/qHdMKNY5GsywPNMBPX-T7U+++TI/-Tmp-//PEAR/temp
PEAR测试目录test_dir/Applications/MAMP/bin/php/php5.3.6/lib/php/tests
PEAR www files目录www_dir/Applications/MAMP/bin/php/php5.3.6/lib/php/www
Cache TimeToLive Cache\u ttl 3600
首选包状态首选_状态稳定
Unix文件掩码umask 22
调试日志级别详细信息1
PEAR密码(用于输入密码)
维修人员)
签名处理程序sig_bin/usr/local/bin/gpg
签名密钥目录sig_keydir/Applications/MAMP/bin/php/php5.3.6/pearkeys
签名密钥Id sig_密钥Id
包签名类型sig_类型gpg
PEAR用户名(用于用户名)
维修人员)
用户配置文件Filename/Users/magalie/.pearrc
系统配置文件Filename/Applications/MAMP/bin/php/php5.3.6/conf/pear.conf
phpunit从/usr/lib/php运行,它是$PATH的一部分
这是我的HElloWorldTest.php文件的内容,我已经尝试过使用或不使用框架文件的php扩展名,但没有成功
<?php
require_once 'HelloWorld.php';
require_once 'PHPUnit/Framework';
///Applications/MAMP/bin/php/php5.3.6/lib/php/
class HelloWorldTest extends PHPUnit_Framework_TestCase
{
public function test__construct()
{
$hw = new HelloWorld();
$this->assertType('HelloWorld, $hw');
}
public function testSayHello()
{
$hw = new HelloWorld();
$string = $hw->sayHello();
$this->asserEquals('Hello World!', $string);
}
}
您不需要在测试中加载PHPUnit。phpunit
可执行文件负责设置自己的自动加载程序。删除此行:
require_once 'PHPUnit/Framework';
您不需要在测试中加载PHPUnit。phpunit可执行文件负责设置
它自己的自动加载器。删除此行:
require_once 'PHPUnit/Framework';
要求一次“PHPUnit/框架”
这对我有用
或者,如果您有很多现有的测试,甚至可能不是自己编写的,您可以创建一个名为“Framework.php”的空文件,并将其放在PHPUnit目录中