我怎样才能让PHP自动完成PHPUnit?
我正在使用Symfony2,所有的东西都安装好了,到目前为止我的testing工作非常好。
我想要自动完成PHPUnit的方法。
Symfony的WebTestCase
类从PHPUnit_Framework_TestCase
扩展如下:
abstract class WebTestCase extends \PHPUnit_Framework_TestCase
虽然父类被突出显示为不存在。
我怎样才能告诉我的IDE使用PHPUnit的库?
我正在使用PHPStorm
PHPUnit可以通过path/Users/myUser/pear/share/pear/PHPUnit/
将其添加为库…在正在编辑的项目中,将其添加到“外部库”中。
应该包括在内。
对我来说(Ubuntu 12.04),它将这个文件夹添加为外部库:
/usr/share/php/PHPUnit
对于PHPStorm用户,进入文件 – >设置 – >项目设置 – > PHP,并在那里添加path。
PhpStorm 2016.2引入了一个function – 在这种情况下 – 也是一个错误。
在$ this-> context中,Autocompletion现在不再包含静态方法作为选项。 ( https://blog.jetbrains.com/phpstorm/2016/07/completion-changes-in-phpstorm/#more-10425 )
由于phpunittesting被定义为静态方法,但是通过$ this->调用,所以phpunit的自动完成function现在已经被破坏。
他们已经在下一个EAP( https://youtrack.jetbrains.com/issue/WI-32530 )回滚了phpunit的这个变化。
解决方法直到下一个稳定版本:按Ctrl-Space两次; 这将在自动填充字段中显示静态方法。
您可以将phpunit/phpunit
包添加到composer.json文件的require-dev
部分。
运行composer install
,PHPStorm将知道PHPUnit类。
我有OSX,phpunit安装的自制软件和phpstorm 9.0
那么它是如何工作的:打开首选项或按cmd +, – >语言和框架 – > PHP – >包含path – >添加“/usr/local/Cellar/phpunit/4.7.6/libexec/”
我有PHPStorm 2017.1.4和我的操作系统是Ubuntu 16.04。 我已经在我的/ usr / local / bin中安装了phpunit.phar。
我将使用〜/ WORK / ..作为示例path,但是应该使用完整path/ home / myname / WORK / ..
我所做的只是去我家里的一个文件夹(如:〜/ WORK /),然后运行:
composer require phpunit/phpunit
composer php完成下载phpunit后,我添加了一个新的项目包括path:
~/WORK/vendor/phpunit/phpunit/src
现在我拥有所有的PHPUnit自动完成function,我可以直接跳转到PHPUnit的源代码,并且可以使用Composer更新PHPUnit的代码。 我还从/ usr / local / bin中删除了phpunit.phar,并将其replace为〜/ WORK / vendor / bin / phpunit