2015-10-19 162 views
1

我想改變PHPUnit的源代碼,但首先我希望能夠運行測試以確保我不會破壞任何東西。開發PHPUnit:如何運行測試

我以前的git獲得版本4.7.7出到目錄中。在那個目錄中,我跑了composer install

然後我cdtests並運行:

phpunit --bootstrap ./bootstrap.php ./ 

(我使用運行測試PHPUnit的版本也是4.7.7)

,但我得到這個:

PHP Fatal error: Uncaught exception 'Exception' with message 'PHPUnit suppresses exceptions thrown outside of test case function' in C:\Users\jodes\Documents\NetBeansProjects\PHPUnit\phpunit\tests\Regression\GitHub\873\Issue873Test.php:7 
Stack trace: 
#0 phar://C:/phpbin/phpunit.phar/phpunit/Util/Fileloader.php(52): include_once() 
#1 phar://C:/phpbin/phpunit.phar/phpunit/Util/Fileloader.php(36): PHPUnit_Util_Fileloader::load('C:\Users\jody\D...') 
#2 phar://C:/phpbin/phpunit.phar/phpunit/Framework/TestSuite.php(334): PHPUnit_Util_Fileloader::checkAndLoad('C:\Users\jody\D...') 
#3 phar://C:/phpbin/phpunit.phar/phpunit/Framework/TestSuite.php(406): PHPUnit_Framework_TestSuite->addTestFile('C:\Users\jody\D...') 
#4 phar://C:/phpbin/phpunit.phar/phpunit/Runner/BaseTestRunner.php(57): PHPUnit_Framework_TestSuite->addTestFiles(Array) 
#5 phar://C:/phpbin/phpunit.phar/phpunit/TextUI/Command.php(121): PHPUnit_Runner_BaseTestRunner->getTest('.\tests\', '', Array) 
#6 phar://C:/phpbin/phpunit.phar/phpunit/TextUI/Command.php(99): PHPUnit_TextU in C:\Users\jody\Documents\NetBeansProjects\PHPUnit\phpunit\tests\Regression\GitHub\873\Issue873Test.php on line 7 

Fatal error: Uncaught exception 'Exception' with message 'PHPUnit suppresses exceptions thrown outside of test case function' in C:\Users\jodes\Documents\NetBeansProjects\PHPUnit\phpunit\tests\Regression\GitHub\873\Issue873Test.php:7 
Stack trace: 
#0 phar://C:/phpbin/phpunit.phar/phpunit/Util/Fileloader.php(52): include_once() 
#1 phar://C:/phpbin/phpunit.phar/phpunit/Util/Fileloader.php(36): PHPUnit_Util_Fileloader::load('C:\Users\jody\D...') 
#2 phar://C:/phpbin/phpunit.phar/phpunit/Framework/TestSuite.php(334): PHPUnit_Util_Fileloader::checkAndLoad('C:\Users\jody\D...') 
#3 phar://C:/phpbin/phpunit.phar/phpunit/Framework/TestSuite.php(406): PHPUnit_Framework_TestSuite->addTestFile('C:\Users\jody\D...') 
#4 phar://C:/phpbin/phpunit.phar/phpunit/Runner/BaseTestRunner.php(57): PHPUnit_Framework_TestSuite->addTestFiles(Array) 
#5 phar://C:/phpbin/phpunit.phar/phpunit/TextUI/Command.php(121): PHPUnit_Runner_BaseTestRunner->getTest('.\tests\', '', Array) 
#6 phar://C:/phpbin/phpunit.phar/phpunit/TextUI/Command.php(99): PHPUnit_TextU in C:\Users\jody\Documents\NetBeansProjects\PHPUnit\phpunit\tests\Regression\GitHub\873\Issue873Test.php on line 7 

我在做什麼錯?由於

+0

您需要閱讀文檔,https://phpunit.de/getting-started.html – cmorrissey

+0

我不想使用PHPUnit,我知道該怎麼做。我試圖開發PHPUnit的,並且這樣做,我需要能夠運行已爲它 – Jodes

回答

2

如果你的類「成功」有一個命名空間,你最好使用磁帶自動加載機與PHPUnit的--bootstrap參數

如果這種情況與自動加載相關的,你也許想讀http://jes.st/2011/phpunit-bootstrap-and-autoloading-classes/(舊的,但一個清晰的)

+0

輝煌,感謝開發測試 - 但現在我得到了另一個問題! (更新的問題)。 – Jodes

+0

我已經找到了解決辦法:在我有限的測試只是測試目錄'測試/ Framework'它工作得很好 - 這是我所需要的。我還沒有找出原因,但以下目錄給出了問題:'失敗','迴歸','TextUI','_files' – Jodes