我已经使用PHPUnit设置了PhpStorm 5,我很好奇PhpStorm是否有一些功能会在保存文件时自动运行单元测试。像守望者和守卫一样。我曾尝试搜索我们心爱的www和PhpStorm文档,但未能找到解决方案。
答案 0 :(得分:25)
从版本6开始,PHPStorm拥有“文件监视器”
<custom>
您必须为PHPUnit设置命令行,它不会是集成测试,但您可以将错误输出到控制台(这是一个好的开始!)
您可以使用各种宏选项,因此您可以在传递给命令行的参数中包含(例如)$FileNameWithoutExtension$Test.php
。
我个人不得不设立两名观察员。第一次检测到对项目文件的修改,第二次检测到对测试文件的更改(第二次没有将Test.php
附加到文件名)我还创建了一个新项目范围,以从第一个观察者中排除测试目录。
您可能还想关闭立即同步,因为这会导致PHPPit在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$
未设置输出过滤器,启用语法错误检查,控制台显示错误。
答案 1 :(得分:2)
PHPUnit观察者被命名为热门phpunit runner
答案 2 :(得分:1)
您还可以查看TDDRunner
这是一个控制台工具,可以在文件更改时自动执行PHPUnit。您也可以通过只删除一个文件来配置PHPUnit。
/usr/bin/tddrunner --group=test
有一个German article提供了进一步的细节。
答案 3 :(得分:0)
在 2017 年,Jetbrains 发布了一项允许自动运行测试的功能。
它位于 Run
控制台中,因此它链接到运行设置,从而简化了此自动运行的设置。
见https://blog.jetbrains.com/phpstorm/2017/07/autorun-phpunit-tests-in-phpstorm-2017-2/