我使用最简单的测试方法获取phpunit并将其安装为this link。我只需下载phpunit.phar文件,chmod&重命名&移动到/ usr / local / bin 然后,我运行 phpunit --version ,确定。
我写了一个简单的php测试用例。
class SimpleTest extends PHPUnit_Framework_TestCase {
public function testSomething(){
$this -> assertTrue(true);
}
}
在终端中,我转到我的php类文件夹,然后执行
phpunit --colors SimpleTest
现在我得到了例外
PHP ReflectionException: Method suite does not exist
in phar:///usr/local/bin/phpunit/phpunit/Runner/BaseTestRunner.php on line 113
PHP Stack trace:
PHP 1. {main}() /usr/local/bin/phpunit:0
PHP 2. PHPUnit_TextUI_Command::main($exit = *uninitialized*)
/usr/local/bin/phpunit:612
PHP 3. PHPUnit_TextUI_Command->run($argv = array (
0 => '/usr/local/bin/phpunit',
1 => '--colors',
2 => 'SimpleTest.php'),
$exit = TRUE)
phar:///usr/local/bin/phpunit/phpunit/TextUI/Command.php:129
PHP 4. PHPUnit_Runner_BaseTestRunner->getTest(
$suiteClassName = 'SimpleTest',
$suiteClassFile = '/home/kevin/Workspace/php/laravel/app/tests/SimpleTest.php',
$suffixes = array (0 => 'Test.php', 1 => '.phpt'))
phar:///usr/local/bin/phpunit/phpunit/TextUI/Command.php:150
PHP 5. ReflectionClass->getMethod('suite')
phar:///usr/local/bin/phpunit/phpunit/Runner/BaseTestRunner.php:113
PHPUnit 3.7.27 by Sebastian Bergmann.
欢迎任何事,谢谢。
答案 0 :(得分:1)
看起来这个错误来自xdebug设置。
解决方案似乎是将此行添加到php.ini文件中(或将现有值更改为0):
xdebug.show_exception_trace = 0
看一看 PHPUnit ReflectionException Method suite does not exist和 Why does PHPUnit hide my xdebug backtrace?了解更多信息。