PhpStorm:找不到类“ PhpUnit \ Framework \ TestCase”(合成器/自动加载)

时间:2018-09-04 07:14:48

标签: php phpunit phpstorm

我在PhpStorm,作曲家和PHPUnit方面遇到问题。

  • Windows 8.1 Pro(64位)
  • PhpStorm是最新的:2018.2.2
  • 尝试了不同的PHP解释器(例如XAMPP)和干净的PHP以获得胜利
  • 作曲家需要使用"phpunit/phpunit": "^7.3.3"的PHPUnit。
  • PHPUnit也可以通过composer成功安装到供应商目录。
  • PHPUnit被PhpStorm识别:

enter image description here

我的测试类扩展了PhpUnit\Framework\TestCase类,当您运行测试时,会发生以下情况:

enter image description here

首先,似乎PhpStorm从XAMPP的PHP加载了旧的PHPUnit(3.7.21),而不是在PhpStorm设置中安装的/安装到供应商文件夹中的公认的PHPUnit(7.3.3)。

但是我不这么认为。

我认为PhpStorm试图通过自动加载器加载PhpUnit\Framework\TestCase类,但是我不知道为什么它找不到PHPUnit ...

谢谢!


可以将整个项目最小化到这个简单的测试类:

enter image description here

composer.json如下所示:

"autoload": {
  "psr-4": {
    "Flo\\Newsletter\\": "src/"
  }
},
"require": {
  "php": "^7.1"
},
"require-dev": {
  "phpunit/phpunit": "^7.3.3"
}

1 个答案:

答案 0 :(得分:2)

命名空间区分大小写。请在导入过程中将PhpUnit更改为PHPUnit

尽管PhpStorm确实可以检测到。这是一个功能要求:https://youtrack.jetbrains.com/issue/WI-38140