11

我正在我的应用程序上进行小部件和单元测试,我根据基本指南正常进行测试,并生成我使用的覆盖率:

flutter test --coverage

但是我只能看到直接测试的文件的覆盖率,我想查看其他文件(覆盖率为 0%),然后我可以检查我的代码的真实覆盖率。

有没有办法做到这一点?

4

1 回答 1

10

我创建了一个小的帮助脚本来帮助生成完整的覆盖率报告。它会扫描您的lib目录中的*.dart文件(不包括*.g.dart)并将它们导入到生成的test/coverage_test.dart文件中。拥有这个生成的文件覆盖分析器将在您下次运行它时遍历整个项目。要使用脚本:

  1. 将其克隆到任何位置

    wget https://raw.githubusercontent.com/priezz/dart_full_coverage/master/dart-coverage-helper
    
  2. 使其可执行

    chmod +x dart-coverage-helper
    
  3. 确保脚本的位置在您的PATH环境变量中(或者只是将其放入项目的根目录中)。

  4. 从 Dart/Flutter 项目的根目录运行

    dart-coverage-helper
    

然后像往常一样生成覆盖率报告

flutter test --coverage # for Flutter project
# or
pub run test_coverage   # for Dart project
于 2020-02-11T12:08:53.830 回答