【问题标题】:Flutter code coverage reports in VS Code on Windows?Windows 上 VS Code 中的 Flutter 代码覆盖率报告?
【发布时间】:2020-08-06 16:07:40
【问题描述】:

有谁知道在 Windows 中查看生成的 Flutter 项目的代码覆盖率报告的好方法,最好使用 VS Code?我知道我可以使用 flutter test --coverage 生成覆盖率报告,它会生成覆盖率文件 (coverage\lcov.info)。

但是如何在 VS Code 中使用它呢?我发现了一个名为 Coverage Gutters 的扩展程序,我可以用它来用绿色可视化被覆盖的线条。它不适合 dart/flutter 代码,但可以正常工作。一个例子是它不会为方法或构造函数的行分隔参数标记绿线,即使这些参数包含在测试中。

但主要问题是我无法获得任何关于覆盖范围的可视化报告。有一些工具(主要是genhtml)用于从 lcov.info 生成 HTML 报告,但这似乎在 Windows 上不可用。我是否需要为 Windows 10 安装 Linux 子系统并以这种方式安装 genhtml?

如果您对如何在 Windows 中使用 Flutter 的代码覆盖率(VS Code 中的报告和/或行可视化)有提示,请告诉我。谢谢!

【问题讨论】:

    标签: flutter visual-studio-code lcov


    【解决方案1】:

    一种方法——我不会称其为好方法,但至少它很简单而且有效——是安装Atom text editor 以及 Dart 和 lcov-info 软件包。然后打开你的 Flutter 项目,点击 Ctrl+Alt+c 会显示图形化的覆盖率报告。

    【讨论】:

      【解决方案2】:
      1. 您可以在此处获取 genhtml.perl 脚本: https://raw.githubusercontent.com/valbok/lcov/master/genhtml.perl
      2. 如果您的计算机上安装了适用于 Windows 的 Git,则您已经安装了 Perl,它应该在此处:Git-install-dir\usr\bin\perl.exe
      3. 将 lcov.info 文件中所有文件路径行(前缀为“SF:”)中的反斜杠字符 ("\") 替换为斜杠字符 ("/")。
      4. 运行 genhtml.perl 脚本。例如(假设当前工作目录是你项目的根目录):

      Git-install-dir\usr\bin\perl.exe C:\Scripts\genhtml.perl -o .\coverage\html .\coverage\lcov .info

      注意。添加--prefix 选项也可能很有用。

      作为这些操作的结果,您应该会在 .\coverage\html 目录中获得生成的 HTML 报告。在浏览器中打开 .\coverage\html\index.html 文件以查看报告。

      我希望这会有所帮助(至少,它对我有用)。

      【讨论】:

        猜你喜欢
        • 2013-07-26
        • 2021-02-01
        • 2014-08-21
        • 1970-01-01
        • 1970-01-01
        • 2014-04-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多