在VSCODE中使用Phpunit
#php #vscode #coverage #phpunit

这篇文章是我努力为我的PHP(Symfony Projects)制作代码覆盖范围的列出点。主要是在我将来再次阅读,但也能够与所有人分享。

VSCODE扩展

名称:phpunit
id:emallin.phpunit
描述:从VSCODE运行Phpunit测试。
版本:4.1.1
出版商:Elon模型
VS市场链接:https://marketplace.visualstudio.com/items?itemName=emallin.phpunit

名称:覆盖牙龈
id:ryanluker.vscode-coverage-gutters
描述:LCOV或XML生成的显示测试覆盖范围 - 使用多种语言
版本:2.10.4
出版商:Ryanluker
VS市场链接:https://marketplace.visualstudio.com/items?itemName=ryanluker.vscode-coverage-gutters

它有助于快速使用快捷方式运行测试,您可以像拥有CLI命令或phpunit.xml.dist的每个设置一样具有预设设置。

Phpunit&Coverage Gutters Extension的设置

{
    "phpunit.args": [
        "--configuration",
        "${workspaceFolder}/www/phpunit.xml.dist",
        "--coverage-clover",
        "${workspaceFolder}/var/coverage/cov.xml",
    ],
    "coverage-gutters.showLineCoverage": true,
}

处理Phpunit模拟类型

https://github.com/sebastianbergmann/phpunit/blob/1f5e1334bb5de60471251a2392a9cc8d43bc4174/.phpstorm.meta.php

将此文件复制到项目的任何子文件夹,最好是任何被忽略的文件夹。然后,您可以自动求解VSCODE的无效类型。当您从类创建模拟时发生的情况发生,而Vscode不知道如何将其检测为原始类或模拟类别类,通常会显示为错误,如果您不执行此步骤。

这篇文章也与xdebug https://dev.to/arielmejiadev/set-xdebug-coverage-mode-2d9g

有关

https://xdebug.org/docs/all_settings#mode

代码无法获得覆盖

这是解决运行测试后未显示代码覆盖的问题的检查清单。