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

Vit*_*ian 37 php phpunit symfony phpstorm

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

我想自动完成PHPUnit的方法.

Symfony的 WebTestCase类扩展PHPUnit_Framework_TestCase如下:

abstract class WebTestCase extends \PHPUnit_Framework_TestCase
Run Code Online (Sandbox Code Playgroud)

尽管如此,父类突出显示为不存在.

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

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

Bri*_*ian 55

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

然后应该包括它.

  • 仅供参考,要在Mac上进行项目设置,请单击PhpStorm - >首选项,单击PHP(在项目设置下),然后在右侧,您可以添加包含路径的路径. (10认同)
  • 使用homebrew安装的phpunit,路径为/ usr/local/opt/phpunit/libexec /(这是一个符号链接,因此即使版本更改也会保持不变) (3认同)
  • 您只需将.phar文件添加到包含路径(您也不必拥有自制程序安装). (2认同)

jah*_*ler 17

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

/usr/share/php/PHPUnit
Run Code Online (Sandbox Code Playgroud)


Jus*_*ein 16

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

  • 使用homebrew安装的phpunit,路径为/ usr/local/opt/phpunit/libexec /(这是一个符号链接,因此即使版本更改也会保持不变) (5认同)

pie*_*rsb 11

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

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

  • 哇,谢谢,我对此感到疑惑,并且已经搜索了几次bug.ctrl空间暂时有效. (3认同)