phpunit在运行非常简单的单元测试时运行异常

时间:2013-09-17 14:28:47

标签: php laravel phpunit laravel-4

  1. 我使用最简单的测试方法获取phpunit并将其安装为this link。我只需下载phpunit.phar文件,chmod&重命名&移动到/ usr / local / bin 然后,我运行 phpunit --version ,确定。

  2. 我写了一个简单的php测试用例。

    class SimpleTest extends PHPUnit_Framework_TestCase {
        public function testSomething(){
           $this -> assertTrue(true);
        }
    }
    
  3. 在终端中,我转到我的php类文件夹,然后执行

    phpunit --colors SimpleTest
    
  4. 现在我得到了例外

    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.
    
  5. 欢迎任何事,谢谢。

1 个答案:

答案 0 :(得分:1)

看起来这个错误来自xdebug设置。

解决方案似乎是将此行添加到php.ini文件中(或将现有值更改为0):

xdebug.show_exception_trace = 0

看一看 PHPUnit ReflectionException Method suite does not existWhy does PHPUnit hide my xdebug backtrace?了解更多信息。