在PhpStorm中保存文件时运行单元测试

我已经用PHPUnit设置了PhpStorm 5,我很好奇PhpStorm是否有一些功能可以在保存文件时自动运行单元测试。就像守望者和守卫一样。我尝试过搜索我们心爱的www和PhpStorm文档,但无法找到解决方案。


答案 1

从版本6开始,PHPStorm有“文件观察者”

  • 打开项目首选项。
  • 从左侧的选项列表中选择“文件观察程序”。
  • 单击右侧空面板底部的 + 符号。
  • 选择<custom>

您必须为PHPUnit设置命令行,它不会是集成测试,但是您可以将错误输出到控制台(这是一个好的开始!

您可以使用各种宏选项,因此您可以在传递给命令行的参数中包含(例如)。$FileNameWithoutExtension$Test.php

我个人不得不设置两个观察者。第一个检测到对项目文件的修改,第二个检测到对测试文件的更改(第二个没有附加到文件名),我还创建了一个新的项目范围,以从第一个观察程序中排除测试目录。Test.php

您可能还希望关闭即时同步,因为这会导致 PHPUnit 在 PHPStorm 自动保存文件时运行。

我的其他设置是这样的:

  • 文件类型:PHP files (PHP)
  • 范围:Project excluding tests
  • 程序:/path/to/php
  • 参数:/path/to/phpunit --configuration /path/to/phpunit.xml.dist /path/to/tests/$FileNameWithoutExtension$Test.php
  • 工作目录:$FileDir$
  • 输出路径:$FileDir$

未设置输出筛选器,启用语法错误检查,控制台显示错误。


答案 2

PHPUnit watcher 被命名为 hot phpunit runner

https://github.com/slavahatnuke/hot-phpunit-runner


推荐