PhpStorm:未找到类'PhpUnit Framework TestCase'(composer / autoload)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PhpStorm:未找到类'PhpUnit Framework TestCase'(composer / autoload)相关的知识,希望对你有一定的参考价值。

我遇到了phpStorm,作曲家和PHPUnit的问题。

  • Windows 8.1 Pro(64位)
  • PhpStorm是最新的:2018.2.2
  • 尝试了不同的PHP解释器,如XAMPP和一个干净的PHP获胜
  • 作曲家需要PHPUnit:"phpunit/phpunit": "^7.3.3"
  • PHPUnit也通过composer成功安装到供应商目录中。
  • PHPUnit来自PhpStorm:

enter image description here

我的测试类扩展了PhpUnitFrameworkTestCase类,当你运行测试时,会发生以下情况:

enter image description here

首先,似乎PhpStorm从XAMPP的PHP加载旧的PHPUnit(3.7.21),而不是在PhpStorm设置/安装到vendor文件夹中的设置中识别的PHPUnit(7.3.3)。

但我不这么认为。

我认为PhpStorm尝试通过自动加载器加载PhpUnitFrameworkTestCase类,但我不知道为什么它找不到PHPUnit ...

提前致谢!


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

enter image description here

composer.json如下所示:

"autoload": {
  "psr-4": {
    "FloNewsletter": "src/"
  }
},
"require": {
  "php": "^7.1"
},
"require-dev": {
  "phpunit/phpunit": "^7.3.3"
}
答案

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

虽然PhpStorm可以真正发现这一点。这是一个功能请求:https://youtrack.jetbrains.com/issue/WI-38140

以上是关于PhpStorm:未找到类'PhpUnit Framework TestCase'(composer / autoload)的主要内容,如果未能解决你的问题,请参考以下文章

PhpStorm 2016.3.3 找不到 PHPUnit 6.0 的测试类。*

PhpStorm 中的 PHPUnit 引导程序

为 PHPUnit 创建一个基本测试类并将其扩展为常见功能会导致类未找到错误

如何正确设置 PhpStorm? Сan't run PHPUnit on Laravel 8 on Windows 10. 调用未定义函数 Tests\Unit\is_id_term()

使用 PDO SQL INSERT INTO 的 PHPunit 测试函数未定义数组键错误

PhpStorm 配置 PHPUnit