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

PhpStorm有一些奇怪的行为让我疯狂。 我有我的项目设置有一个source和一个test目录。 source目录应该用于生产性代码,而test目录应该包含所有的phpunit测试。

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

我已经在PhpStorm中将src/test/标记为源代码和测试目录,但是,每次我想为类创建一个新的测试套件时,PhpStorm都会默认将测试类放到类下的src/目录下测试。

可以改变它,但是当test/中的相同目录尚不存在时,它会变得更加恼人。 PhpStorm不会创建它,而只会拒绝为我创建该测试套件。

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

有什么我做错了,或者我可以配置一些让情况更轻松的事情?


没有做错什么 。 它不会以这种方式工作 - 开发人员将其编码为现在的行为方式。

最初IDE使用PHPUnit生成测试类的能力(当时这种功能是实际PHPUnit的一部分)。 然后PHPUnit的创建者已经将这个功能转移到单独的包( phpunit-skelgen )中,并且您必须手动/单独安装它。 然后,开发人员决定完全删除phpunit-skelgen支持,并实施当前的实现(这也更符合在IDE所支持IDEA平台/技术上构建的其他IDE中的类似例程)。

关于将这种行为改变为与您所描述/期望的相同,很少有票据,但到目前为止,它看起来不像它们的优先列表中。

  • https://youtrack.jetbrains.com/issue/WI-2850
  • https://youtrack.jetbrains.com/issue/WI-24358
  • https://youtrack.jetbrains.com/issue/WI-21890
  • 订阅这些票(明星/投票/评论)以获得进展通知。


    从发行版2016.3开始,PHPStorm现在可以在指定的测试目录中进行测试,从而准确提供您在问题中所要求的内容。

    链接地址: http://www.djcxy.com/p/87359.html

    上一篇: How to generate Tests in tests/ directory in PhpStorm?

    下一篇: SonarQube Test Coverage with MsTest