2014-01-09 126 views
1

我試圖在OSX小牛的MBP上安裝PHPUnit。 安裝部分進展順利,pear不會引發錯誤,例外或任何其他問題。但是當我嘗試在終端中執行phpunit命令時,它會引發錯誤。在OSX小牛上安裝PHPUnit

我已經搜索了很多答案,但我找不到任何解決問題的方法。

這是發生了什麼:

  • 安裝PHPUnit的(梨安裝PHPUnit/PHPUnit的)它說,它已經安裝了(這是正確的)。
  • 當我列出所有已安裝的軟件包(梨列表)時,PHPUnit不會顯示在列表中。
  • 當我執行pear list-all命令時,它顯示爲PHPUNIT(它是版本1.3.2)和PHPUNIT2(版本2.3.6)兩次。
  • ,當我嘗試執行PHPUnit的命令時,它拋出一個錯誤(兩次):

PHP Fatal error: require_once(): Failed opening required 'File/Iterator/Autoload.php' (include_path='.:') in /usr/local/pear/share/pear/PHPUnit/Autoload.php on line 64

Terminal Output

編輯:我是有工作的美洲獅,但因爲我已經升級小牛隊的phpunit被打破了。另外,我檢查了autoload.php的目錄,並且文件在那裏。

有人可以請解釋發生了什麼嗎?它開始讓我發瘋......

+0

這是不是一個真正的答案,但我最近將我的所有項目,使他們通過作曲家加載PHPUnit的。安裝起來要容易得多。另外,無論您或您的同事使用哪種操作系統和環境,當您「作曲家安裝」時,PHPUnit始終可用。 –

+0

感謝您的評論。我期待着它,這聽起來很有希望! 快速的問題,這是否適用於XAMPP?如果是,如何? – Sander

+0

不客氣。確保從composer中包含autoload.php以使所有PHPUnit類可用於您的測試。 PHPStorm非常簡單,我使用:http:// stackoverflow。com/questions/12814263/phpunit-via-composer-and-phpstorm –

回答

0

如果您使用的MacPorts安裝PHP,你需要在php.ini中設置您include_path到:

include_path = ".:/opt/local/lib/php/:/opt/local/lib/php/PEAR/" 

我也重新安裝PHPUnit,因爲有一些依賴問題(發生器.php丟失):

你可以運行這個作爲根(發現噸重新安裝時他的劇本here並添加--alldeps選項):

pear list -c phpunit | grep stable | awk '{print "phpunit/"$1}' | xargs pear uninstall 
pear install --alldeps phpunit/phpunit