我已经用 PHPUnit 设置了 PhpStorm 5,我很好奇 PhpStorm 是否有一些功能可以在保存文件时自动运行单元测试。像守望者和守卫。我已经尝试搜索我们心爱的 www 和 PhpStorm 文档,但无法找到解决方案。
问问题
6435 次
4 回答
26
从版本 6 开始,PHPStorm 具有“文件观察器”
- 打开您的项目首选项。
- 从左侧选项列表中选择 File Watchers。
- 单击右侧空白面板底部的 + 符号。
- 选择
<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$
未设置输出过滤器,启用语法错误检查,控制台显示错误。
于 2013-03-22T09:32:27.267 回答
2
PHPUnit watcher 被命名为 hot phpunit runner
于 2013-09-25T09:03:44.673 回答
0
2017 年,Jetbrains 发布了一项允许自动运行测试的功能。它位于Run
控制台中,因此它链接到运行设置,从而简化了此自动运行的设置。
见https://blog.jetbrains.com/phpstorm/2017/07/autorun-phpunit-tests-in-phpstorm-2017-2/
于 2021-07-21T09:51:15.343 回答