我正在研究如何讓詹金斯自動爲我們運行Behat測試。所以我在本地機器上安裝了Jenkins(運行在Ubuntu 12.10上)。我已經能夠從我的本地機器上運行Behat幾個星期了。爲什麼Behat PHP命令在終端中工作,但不在Jenkins中?
在我的命令行我切換到該目錄,並運行以下命令:
cd /virtualhosts/automated-testing/behat/ecash
php bin/behat -p phantomjs features/populate.feature
從這裏吐出來的都是關於哪些步驟正在運行的漂亮的語法以及每個做。這很好。然後我將下面的內容放入Jenkins:
whoami
cd /virtualhosts/automated-testing/behat/ecash
pwd
php bin/behat -p phantomjs features/populate.feature
「whoami」返回「jenkins」,在那裏並不意外。 「pwd」顯示我在上一步中指定的目錄。然後當它到達PHP命令它給了我這個:
PHP Fatal error: Interface 'Behat\Mink\Driver\DriverInterface' not found in /virtualhosts/automated-testing/behat/ecash/vendor/behat/mink-browserkit-driver/src/Behat/Mink/Driver/BrowserKitDriver.php on line 34
然後它進入堆棧跟蹤。所以這讓我撓了撓頭。我想也許它是使用不同的php.ini文件。所以我從詹金斯和我的終端運行「php -i」並獲得了相同的文件。然後我認爲它可能不喜歡用戶。所以我將Jenkins用戶添加到我的組中(因爲我創建了這些文件)。仍然不起作用。
Soooo,我在這裏做錯了什麼?爲什麼這不行?這沒有任何意義。
您是如何通過作曲家安裝Behat/Mink和Behat/MinkBrowserKit軟件包的?你現在是否有Jenkins用戶的另一個項目目錄,並且這兩個軟件包都安裝在供應商文件夾中? –