【问题标题】:phpunit in phpstorm issue - Fatal error: Class 'PHPUnit_Framework_TestCase' not foundphpstorm 问题中的 phpunit - 致命错误:找不到类“PHPUnit_Framework_TestCase”
【发布时间】:2018-10-14 19:07:36
【问题描述】:

我正在尝试让 phpunit 在 phpstorm 中工作,但出现以下错误

Fatal error: Class 'PHPUnit_Framework_TestCase' not found

我使用的是 php 7.1.12 版和 phpunit 7.1.5 版。

我已经寻找解决方案,但找不到任何可以帮助我的方法。

关于如何解决这个问题的任何想法?

测试配置。

【问题讨论】:

    标签: phpunit phpstorm


    【解决方案1】:

    在 PHPUnit 6 中没有 PHPUnit_Framework_TestCase 类。由于版本 6 PHPUnit 使用命名空间,所以你应该使用 PHPUnit\Framework\TestCase 代替。如果你不能这样做,你应该降级到 PHPUnit 5 或为缺少的类创建别名:

    if (!class_exists('PHPUnit_Framework_Assert')) {
        class_alias('PHPUnit\Framework\Assert', 'PHPUnit_Framework_Assert');
    }
    
    if (!class_exists('PHPUnit_Framework_TestCase')) {
        class_alias('PHPUnit\Framework\TestCase', 'PHPUnit_Framework_TestCase');
    }
    

    【讨论】:

      【解决方案2】:

      PHPStorm 需要能够定位和运行 PHPUnit。如果您的项目使用composer,您可以将其配置为从那里加载它。如果没有,PHPStorm 可以为您下载。

      【讨论】:

      • 感谢您的回复。我试过了,得到了同样的错误。我拥有的 PHPUnit 版本是 6.2.4。我应该降级到 5.7.27 并尝试一下吗?
      • 你在运行什么 PHP Storm?
      • 我使用的是2018.1.2版本
      • 您可以降级到 PHP Unit 5.x,它可能会工作。我觉得奇怪的是 PHP Storm 没有检测到要使用的正确版本。也许你没有使用 composer 来获取我在发布的图片中显示的 PhpUnit。
      • 你能先让phpunit从命令行运行吗?这可能是一个更好的主意!
      猜你喜欢
      • 2014-03-13
      • 2014-06-11
      • 2019-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-29
      • 2022-01-02
      • 2013-09-27
      相关资源
      最近更新 更多