【问题标题】:PHPUNIT error when running tests with PHPSTORM使用 PHPSTORM 运行测试时出现 PHPUNIT 错误
【发布时间】:2014-05-08 04:36:25
【问题描述】:

使用 PhpStorm 运行 phpunit 测试。

收到此错误:

/usr/local/php5/bin/php /private/var/folders/m8/k61mmmmj7g732j3pd0_91s0c0000gn/T/ide-phpunit.php --configuration /Users/psteinheuser/unity/test/phpunit.xml DatabaseDumperTest /Users/psteinheuser/unity/test/DatabaseDumperTest.inc 测试开始 上午 11:36 ...

致命错误:IDE_PHPUnit_Framework_TestListener 类包含 1 抽象方法,因此必须声明为抽象或实现 其余方法(PHPUnit_Framework_TestListener::addRiskyTest) 在 /private/var/folders/m8/k61mmmmj7g732j3pd0_91s0c0000gn/T/ide-phpunit.php 在第 504 行

调用堆栈: 0.0013 340096 1. {main}() /private/var/folders/m8/k61mmmmj7g732j3pd0_91s0c0000gn/T/ide-phpunit.php:0 PHP 致命错误:类 IDE_PHPUnit_Framework_TestListener 包含 1 抽象方法,因此必须声明为抽象或实现 其余方法(PHPUnit_Framework_TestListener::addRiskyTest) 在 /private/var/folders/m8/k61mmmmj7g732j3pd0_91s0c0000gn/T/ide-phpunit.php 在第 504 行

已经找到以前的帖子说这是固定的,虽然我似乎有正确的版本应该可以工作。

PHPStorm 7.1.3 phpunit 3.7.28 php 5.4.24

操作系统为 Mac 10.9.2

已删除并重新安装 PHPStorm,升级 php,重新安装 phpunit,重新启动 apache,重新启动,挠头等等。

从终端手动运行 phpunit 测试,工作正常。

查看 PHpStorm 中的 Preferences,它似乎正确地指向了 phpunit。 我认为这是权限或路径问题,但我不知道下一步该往哪里看。

欣赏任何意见或方向。

【问题讨论】:

标签: php


【解决方案1】:

在 PHPStorm 中,我能够解决此问题的唯一方法是手动更新存在此错误的 jar 文件的内容。

我们都在 Mac OSX 10.9 上,所以这些说明应该适合你。

首先复制现有的 jar 文件:

cp /Applications/PhpStorm.app/plugins/php/lib/php.jar /Applications/PhpStorm.app/plugins/php/lib/php.jar.orig

现在,创建一个临时目录来保存 jar 文件的内容并解压

mkdir ~/jarfiles cd ~/jarfiles jar xf /Applications/PhpStorm.app/plugins/php/lib/php.jar

提取后,您需要编辑 phpunit.php 文件以添加缺少的方法存根

vi scripts/phpunit.php

在我的文件中的第 310 行附近是一个类 'IDE_PHPUnit_Framework_TestListener'。插入以下方法存根:

公共函数 addRiskyTest(PHPUnit_Framework_Test $test, Exception $e, $time){}

现在只需重新打包您的 jar 并将其替换到您的 PhpStorm 中:

jar cf0 php.jar ./* mv php.jar /Applications/PhpStorm.app/plugins/php/lib/php.jar

这为我解决了问题。希望它也为您解决。祝你好运!

【讨论】:

  • 非常感谢。非常适合 phpunit 4.0.7 和 osx 上的 Phpstorm。
猜你喜欢
  • 1970-01-01
  • 2017-08-05
  • 2013-06-19
  • 2016-03-23
  • 1970-01-01
  • 1970-01-01
  • 2015-08-28
  • 2016-05-19
  • 1970-01-01
相关资源
最近更新 更多