【问题标题】:Linking PHPUnit with PhpStorm将 PHPUnit 与 PhpStorm 链接
【发布时间】:2017-05-25 04:13:36
【问题描述】:

PHPUnit:4.8.31 PhpStorm:2016.1

我在从 PhpStorm 中运行 PHPUnit 时遇到问题。在 CMD 窗口中,运行测试工作正常,但 PhpStorm 输出是这样的:

"C:\Program Files (x86)\EasyPHP-Devserver-16.1\eds-binaries\php\php704vc14x86x161109103716\php.exe" C:/Users/username/AppData/Local/Temp/ide-phpunit.php --no-configuration "C:\tests"
Testing started at 5:30 PM ...

Warning: PHP Startup: Unable to load dynamic library 'C:\Program Files (x86)\EasyPHP-Devserver-16.1\eds-binaries\php\php704vc14x86x161109103716\ext\php_curl.dll' - The specified procedure could not be found.
 in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library 'C:\Program Files (x86)\EasyPHP-Devserver-16.1\eds-binaries\php\php704vc14x86x161109103716\ext\php_curl.dll' - The specified procedure could not be found.

Fatal error: Class 'PHPUnit_TextUI_ResultPrinter' not found in C:\Users\username\AppData\Local\Temp\ide-phpunit.php on line 253 in Unknown on line 0

PHP Fatal error:  Class 'PHPUnit_TextUI_ResultPrinter' not found in C:\Users\username\AppData\Local\Temp\ide-phpunit.php on line 253

Process finished with exit code 255

我已将文件夹与我的 phpunit.phar 库包含在 PhpStorm 中:

PhpStorm 知道包含路径,自动完成工作。

运行配置如下所示:

我使用的 PHP 版本/安装是相同的。

  • 窗口:

  • PhpStorm:

有什么想法吗?

【问题讨论】:

  • 请说明:1) PhpStorm 版本 2) PHPUnit 版本。您的 IDE 似乎不是最新版本(其中界面发生了一些变化,并且它与 PHAR 版本的工作方式不同)。 3)另外——如果你点击最后一个截图上的(i)信息按钮——它会在那里显示什么扩展?它会在那里列出curl吗?
  • 这是命令行在此处使用 PhpStorm 2016.3.2 和 PHPUnit 5.5.4/5.7.5 的样子:E:\Projects\php70\php.exe E:\Projects\web\_libs\corelib3\vendor\phpunit-5.5.4.phar --configuration....
  • 我在问题中添加了版本和更多信息。 (i) 按钮不起作用:(

标签: phpunit phpstorm


【解决方案1】:

我尝试从 CMD 窗口运行使用 curl 的脚本,但发现 curl 库未加载。

我做了 phpinfo();并看到 CMD 窗口正在使用不同的 PHP 安装(我安装了新的 EasyPHP 版本)。

我将 windows sys 变量 PATH 指向旧的,然后它开始抛出一些关于不加载某些库(php_curl.dll、libssh2.dll)的错误,所以我将它们从新的安装文件夹移动到旧的和 Windows\SysWOW64。 神奇的是,PhpStorm 运行配置也被修复了,这让我相信它没有使用我在其选项中设置的解释器,而是使用 PATH 中的解释器..

PhpStorm 输出现在是:

"C:\Program Files (x86)\EasyPHP-Devserver-16.1\eds-binaries\php\php704vc14x86x161109103716\php.exe" C:/Users/username/AppData/Local/Temp/ide-phpunit.php --no-configuration "C:\tests"
Testing started at 9:22 AM ...

Warning: The use statement with non-compound name 'PHPUnit_Framework_TestCase' has no effect in C:\DummyTest.php on line 3
PHPUnit 4.8.31 by Sebastian Bergmann and contributors.

PHP Warning:  The use statement with non-compound name 'PHPUnit_Framework_TestCase' has no effect in C:\DummyTest.php on line 3

No tests found in class "TestDummy".


Time: 372 ms, Memory: 10.00MB


FAILURES!
Tests: 1, Assertions: 0, Failures: 1.

Process finished with exit code 1

【讨论】:

  • 您使用的是 PHP 7?如果是这样,您需要从 4.8 升级您的 phpunit。
  • 我是。它像这样工作得很好——或者我可能没有测试过任何 PHP-7 类。
猜你喜欢
  • 2016-09-12
  • 2020-01-04
  • 2012-08-01
  • 2018-03-24
  • 2011-07-25
  • 2016-10-21
  • 2016-01-04
  • 1970-01-01
  • 2018-04-27
相关资源
最近更新 更多