2013-07-30 116 views
4

背景:我在一個Windows主機和sshing到一個流浪的LAMP設置(Ubuntu的13.04)。phpunit與作曲家不工作

我已經用我的composer.json以下行安裝與作曲家的PHPUnit:

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

我已經然後運行該安裝PHPUnit的作曲家更新。我現在可以導航到/ vendor/bin並查看phpunit二進制文件。

但是,如果我從該目錄中(爲此事或任何elese)型PHPUnit的我得到錯誤「的PHPUnit沒有安裝」

任何建議,我去這下地方 - 有這麼幾個涉及此設置的步驟我真的不知道我可能出錯的地方

回答

3

./phpunit from bin directory。

這只是不在你的道路上。

+0

當我希望downvoter會解釋爲什麼downvote。以下是該問題和解決方案的完整說明:https://dl.dropboxusercontent.com/u/20304987/terminal.html jerkwad;) –

+0

+1我認爲你(幾乎)是正確的。當我遵循你的指令時,當我用sudo運行它時,我得到了一個權限被拒絕的消息(儘管它是文件的所有者),但我得到'command not found'。有什麼建議麼? – WebweaverD

+0

'if [-x「phpunit」];然後回顯「可執行文件」;否則回顯「不可執行」; fi'測試它是否可執行。 'ls -la'也會告訴你誰可以執行這個文件,如果有的話。 'chmod a + x phpunit'使得它可以被每個人執行。這就是bash幫助你得到的一個PHP問題:) –

0

我創建上面的腳本:

#!/bin/bash 
binary=$1 
shift 
dir=$PWD 
for i in $(seq 5) 
do 
if [ -e "$dir/composer.json" ] 
then 
    $dir/vendor/bin/$binary [email protected] 
else 
    echo "not found phpunit in $dir" 
fi 
    dir="$dir/.." 
done 

如果你的名字 'composer.exec',並把它n您的路徑,你可以把它叫做:

composer.exec phpunit [phpunit-options] 

而且還有它!調用phpunit或vendor/bin中包含的任何其他bin。

5

所以我有這個問題,也爲我修復是在我的遊民文件來改變:

config.vm.synced_folder "C:/dev/vm/share", "/var/www/", mount_options: ['dmode=777','fmode=666']

config.vm.synced_folder "C:/dev/vm/share", "/var/www/", mount_options: ['dmode=777','fmode=777']

有說666有很多提醒的是足夠寬容的,但在我的情況下,它不是,因爲這只是一個開發機器的安全影響並不重要。

+2

fmode = 766並不完全像寬容,但足以運行phpunit。 – sbaechler