首页 > 解决方案 > PhpStorm PestPHP 不应该发生

问题描述

出于某种原因,当我尝试在 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))

这个确切的命令/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 之后确实有效。我想知道出了什么问题(我猜是在我这边)。

标签: phpphpstormpestphp

解决方案


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

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

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


推荐阅读