2013-08-22 74 views
4

我想開始我的代碼編寫測試,所以我安裝了最新的PHPUnit用下面的命令麻煩包括PHPUnit的

wget http://pear.phpunit.de/get/phpunit.phar 
chmod +x phpunit.phar 
mv phpunit.phar /usr/local/bin/phpunit 

http://phpunit.de/manual/3.8/en/installation.html

然後我加入的/ usr/local/bin目錄到我的PHP。 INI包括路徑看起來像這樣

include_path = ".:/Applications/MAMP/bin/php/php5.4.10/lib/php:/usr/local/bin"

,但我得到以下錯誤,當我訪問/my-app/test.php

警告(2):包括(PHPUnit的/ Autoload.php):未能打開流:沒有 這樣的文件或目錄 [CORE /蛋糕/的TestSuite/CakeTestSuiteDispatcher.php,線150]

警告(2):include()[function.include]:開啓失敗 包含的PHPUnit/Autoload.php (include_path ='/ Users/DevinCrossman/Sites/studio-bliss/lib:。:/ Applications/MAMP/bin/php/php5.4.10/lib/php:/ usr/local/bin') [CORE/Cake/TestSuite/CakeTestSuiteDispatcher.php,line 150]

我試着將/usr/local/bin/phpunit更改爲/usr/local/bin/PHPUnit,但沒有奏效。我也試圖改變爲/usr/local/bin/phpunit/usr/local/bin包含路徑並重新啓動Apache的(我使用這臺機器上MAMP PRO但它也沒有我的Ubuntu的服務器上運行)

一個phpinfo()顯示包括路徑被正確設置。

這可能是很明顯的,我錯過了。誰能告訴我爲什麼這不起作用?

回答

2

CakePHP recommends using PEAR to install PHPUnit。它應該在你的情況下更好地工作。

將phar放在文件名爲'phpunit'的/ usr/local/bin中是爲了讓0123.運行,因爲它會使phpunit命令可用。例如運行命令:

phpunit MyTest test.php 

在瀏覽器中運行時,您需要PHPUnit的類可用於加載不通過簡單地在其包含路徑的路徑,你藥業工作。 我不知道,但如果您在您的測試文件中藥業它可能工作:

require_once '/path/to/phpunit.phar' 
+0

謝謝!用PEAR安裝爲我工作 –

1

編輯或應用目錄下創建composer.json。添加以下行。

{ 
    "require-dev" : {"phpunit/phpunit":"3.7.*"} 
} 

然後使用composer進行安裝。

composer install