如何在PhpStorm的tests /目录中生成测试?

Mat*_*tar 9 php phpunit phpstorm

PhpStorm有某种奇怪的行为让我发疯.我的项目设置有一个source和一个test目录.该source目录应该是高效的代码,而test目录应该包含所有的phpunit测试.

在这些目录中,文件夹结构是镜像的 - 如果我有一个类\foo\Bar,那么有 src/foo/Bar.phptest/foo/BarTest.php.

我已经在PhpStorm中标记src/test/作为源和测试目录,但是,每次我想为类创建一个新的测试套件时,PhpStorm默认将测试类放入被测试类src/旁边的目录中.

可以改变它,但是当相同的目录test/还不存在时,它会变得更烦人.而不是创建它,PhpStorm将拒绝为我创建该测试套件.

也许我误解了PhpStorm中测试管理背后的概念 - 因为它不会是那么糟糕的用户体验.

有什么我做错了,或者我可以配置什么来减轻这种情况?

Laz*_*One 2

你没有做错什么。它只是不能以这种方式工作——开发人员对其进行编码,使其按照现在的方式运行。

最初,IDE 使用 PHPUnit 生成测试类的功能(当时此类功能是实际 PHPUnit 的一部分)。然后 PHPUnit 创建者已将此功能移至单独的包 ( phpunit-skelgen) 中。您必须手动/单独安装它。然后开发人员决定完全放弃 phpunit-skelgen 支持并实现当前的实现(这也更符合基于 IDEA 平台/这些 IDE 支持的技术构建的其他 IDE 中的类似例程)。

关于将这种行为更改为与您所描述/期望的相同的票证很少。但到目前为止,它看起来并不在他们的优先级列表中...

订阅这些票证(星标/投票/评论)以获取进度通知。