如何解决PhpStorm中PHPUnit 10运行代码覆盖时的--whitelist选项错误?
解决PHPUnit 10与PhpStorm覆盖率运行的--whitelist冲突问题
升级PhpStorm到最新稳定版
JetBrains已经针对PHPUnit 10的参数变更做了适配,新版本会自动用PHPUnit 10支持的--coverage-filter替代旧的--whitelist参数,升级后即可解决报错。手动替换覆盖率参数(暂不升级时)
- 打开PhpStorm设置(快捷键Ctrl+Alt+S,或通过File > Settings进入)
- 进入
Languages & Frameworks > PHP > Test Frameworks - 选中当前使用的PHPUnit配置,切换到「Coverage」标签页
- 删除自动生成的
--whitelist相关内容,手动添加--coverage-filter=你的源码目录路径(比如--coverage-filter=./src) - 保存配置后重新运行覆盖率测试
通过phpunit.xml配置覆盖率规则
在项目根目录的phpunit.xml(或phpunit.xml.dist)中添加以下配置,PhpStorm会读取该配置自动应用覆盖率过滤,不再插入--whitelist参数:<coverage> <include> <directory suffix=".php">./src</directory> </include> </coverage>
内容的提问来源于stack exchange,提问作者jmjoseph
相关产品推荐
相关产品推荐

