【问题标题】:PhpStorm PestPHP ShouldNotHappenPhpStorm PestPHP 不应该发生
【发布时间】:2021-11-28 03:38:41
【问题描述】:

由于某种原因,当我尝试在 PhpStorm 中运行 Pest 测试时,我总是收到此错误:

/usr/local/bin/php ~/project/vendor/pestphp/pest/bin/pest --teamcity --configuration ~/project/phpunit.xml ~/project/tests/Feature/SampleTest.php

Pest 1.20.0

   Pest\Exceptions\ShouldNotHappen 

  
This should not happen - please create an new issue here: https://github.com/pestphp/pest.

- Issue: Test file not found.
- PHP version: 8.1.0RC5-dev
- Operating system: Darwin

  at pestphp/pest/src/Exceptions/ShouldNotHappen.php:38
     34▕      * Creates a new instance of should not happen without a specific exception.
     35▕      */
     36▕     public static function fromMessage(string $message): ShouldNotHappen
     37▕     {
  ➜  38▕         return new ShouldNotHappen(new Exception($message));
     39▕     }
     40▕ }
     41▕

      +3 vendor frames 
  4   tests/Feature/SampleTest.php:38
      it("it validates the form", Object(Closure))
  • 操作系统:macOS Monterey(但我在 Big Sur 也遇到了同样的问题)
  • PhpStorm:2021.2.2
  • Pest 插件:1.2.1(与之前版本相同的错误,但不确定是哪一个)
  • PHP:8.1.0RC5-dev(自 8.0 以来的相同错误)

当我直接从终端运行这个确切的命令 /usr/local/bin/php ~/project/vendor/pestphp/pest/bin/pest --teamcity --configuration ~/project/phpunit.xml ~/project/tests/Feature/SampleTest.php 时,它可以完美运行,而不是从 PhpStorm 运行。

这是我在 PhpStorm 中的 Pest 插件配置:

PS:所有 ~/ 路径正在替换真正的绝对路径。 PPS:这个插件在去年第一次公开发布 PestPHP 之后确实有效。我想知道出了什么问题(我猜是我这边)。

【问题讨论】:

    标签: php phpstorm pestphp


    【解决方案1】:

    好的,我找到了这个问题的原因。

    我将父文件夹添加为一个项目,其中包含两个不同的存储库:“api”和“web”。

    只要我打开“api”项目,测试就可以运行。为了将两个项目都放在一个窗口中,我将另一个(“网络”)项目附加到已经打开的文件夹中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-07-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多