2012-07-31 98 views
36

我正在使用Symfony2,所有東西都安裝好了,我的測試工作到目前爲止效果很好。如何爲PHPUnit獲取IDE自動完成功能?

我想獲得PHPUnit方法的自動完成。

的Symfony的WebTestCase類繼承自PHPUnit_Framework_TestCase就像如下:

abstract class WebTestCase extends \PHPUnit_Framework_TestCase 

父類被突出顯示爲不存在的,雖然。

如何告訴我的IDE使用PHPUnit的庫?

我使用PHPStorm
PHPUnit的可通過路徑/Users/myUser/pear/share/pear/PHPUnit/

回答

52

添加它作爲一個圖書館......在你編輯它添加到「外部庫」項目。

它應該包括在內。

+0

這麼簡單,它解決了:)愚蠢的我:D – 2012-07-31 13:58:20

+9

FYI,到Mac上的項目設置,單擊PhpStorm - >首選項,單擊PHP(在項目設置下),然後在右側,您可以添加路徑到您的包含路徑。 – Shivaas 2013-03-22 21:16:48

+1

phpunit的.phar實現如何? 更新:我通過使用lib的自制安裝來解決這個問題。 – 2014-05-02 04:26:02

17

對我來說(Ubuntu的12.04),它被加入該文件夾的外部庫:

/usr/share/php/PHPUnit 
16

對於PHPStorm用戶,進入文件 - >設置 - >項目設置 - > PHP,並在那裏添加路徑。

+5

隨着phpunit安裝homebrew,路徑是/ usr/local/opt/phpunit/libexec /(這是一個符號鏈接,因此即使版本更改也會保持不變) – Loren 2014-11-12 16:14:41

+0

@Loren,謝謝! – 2015-04-20 16:56:02

2

我已經OSX,通過自制軟件和phpstorm安裝PHPUnit的9.0

那麼它是如何工作對我來說:開放的喜好或按CMD +, - >語言&框架 - > PHP - > include路徑 - >添加「/ USR /local/Cellar/phpunit/4.7.6/libexec/「

3

您可以將packages phpunit/phpunit添加到composer.json文件的require-dev部分。運行composer install後,PHPStorm將知道PHPUnit類。

+0

你能否在你的答案中加入一些細節? – 2015-11-29 17:01:22

+0

這對我來說很好,手動添加庫(如在其他答案中)沒有爲我工作。 – Czechnology 2016-07-17 19:47:22

+0

Maxim:只需要添加例如''phpunit/phpunit「:」^ 5.4.6「'到'composer.json'的''require-dev''部分並運行'composer update'。 – Czechnology 2016-07-17 19:48:53

10

PhpStorm 2016.2引入了一個功能 - 在這種情況下 - 也是一個錯誤。

在$ this-> context中,Autocompletion現在不再包含靜態方法作爲選項。 (https://blog.jetbrains.com/phpstorm/2016/07/completion-changes-in-phpstorm/#more-10425

由於phpunit測試被定義​​爲靜態方法,但通過$ this->調用,因此phpunit的自動完成功能現在已被破壞。

他們在下一個EAP(https://youtrack.jetbrains.com/issue/WI-32530)中回滾了phpunit的這一更改。

解決方法直到下一個穩定版本:按Ctrl-Space兩次;這會在自動填充字段中顯示靜態方法。

+3

哇,謝謝,我在想這個,並且搜索了幾次錯誤.Ctrl空間暫時工作。 – Nick 2016-07-26 15:49:45

0

我有PHPStorm 2017.1.4和我的操作系統是Ubuntu 16.04。我已經在我的/ usr/local/bin中安裝了phpunit.phar。

我將使用〜/ WORK/..作爲示例路徑,但您應該使用完整路徑/ home/myname/WORK/..

我所做的只是去一個文件夾,我的家裏面(如:〜/工作/),然後運行:

composer require phpunit/phpunit 

作曲家做下載的PHPUnit我添加了一個新的項目包括對路徑:

~/WORK/vendor/phpunit/phpunit/src 

現在我把所有的PHPUnit的自動完成的,我可以直接跳進PHPUnit的源代碼,我可以保持PHPUnit的代碼與作曲家更新。我也從/ usr/local/bin中刪除了phpunit.phar,並將其替換爲〜/ WORK/vendor/bin/phpunit的鏈接