如何为PHPUnit获取IDE自动完成功能?

时间:2012-07-31 13:40:07

标签: php symfony phpunit phpstorm

我正在使用Symfony2,一切都已安装,我的测试到目前为止工作得很好。

我想自动完成PHPUnit的方法。

Symfony的WebTestCase课程从PHPUnit_Framework_TestCase延伸,如下所示:

abstract class WebTestCase extends \PHPUnit_Framework_TestCase

虽然父类被突出显示为不存在。

如何告诉我的IDE使用PHPUnit的库?

我正在使用PHPStorm
PHPUnit可通过路径/Users/myUser/pear/share/pear/PHPUnit/

获得

7 个答案:

答案 0 :(得分:55)

将其添加为库...在您正在编辑的项目中将其添加到“外部库”。

然后应该包括它。

答案 1 :(得分:17)

对我来说(Ubuntu 12.04),它将此文件夹添加为外部库:

/usr/share/php/PHPUnit

答案 2 :(得分:16)

对于PHPStorm用户,请转到文件 - >设置 - >项目设置 - > PHP并在其中添加路径。

答案 3 :(得分:11)

PhpStorm 2016.2引入了一个功能 - 在这种情况下 - 也是一个错误。

在$ this->中,自动完成功能现在不再包含静态方法作为选项上下文。 (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;然后,这将在自动填充字段中显示静态方法。

答案 4 :(得分:3)

您可以将包phpunit/phpunit添加到composer.json文件的require-dev部分。

运行composer install后,PHPStorm将了解PHPUnit类。

答案 5 :(得分:2)

我有OSX,phpunit由homebrew和phpstorm 9.0安装

那么它对我有用:打开首选项或按cmd +, - >语言和框架 - > PHP - >包含路径 - >添加“/usr/local/Cellar/phpunit/4.7.6/libexec /”

答案 6 :(得分:0)

我有PHPStorm 2017.1.4,我的操作系统是Ubuntu 16.04。我已经在/ usr / local / bin中安装了phpunit.phar。

我将使用〜/ WORK / ..作为示例路径但是你应该使用完整路径/ home / myname / WORK /.../ p>

我所做的只是去我家里面的一个文件夹(如:〜/ WORK /)并运行:

composer require phpunit/phpunit

在作曲家完成下载phpunit后,我添加了一个新项目包含路径:

~/WORK/vendor/phpunit/phpunit/src

现在我拥有所有PHPUnit自动完成功能,我可以直接跳转到PHPUnit的源代码,并且可以使用composer更新PHPUnit的代码。我还从/ usr / local / bin中删除了phpunit.phar,并将其替换为〜/ WORK / vendor / bin / phpunit

的链接