【问题标题】:How can I generate test coverage of untested files on my flutter tests?如何在我的颤振测试中生成未测试文件的测试覆盖率?
【发布时间】:2019-07-03 07:28:12
【问题描述】:

我正在对我的应用程序进行小部件和单元测试,我根据basic guides 正常进行测试,并生成我使用的覆盖率:

flutter test --coverage

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

有没有办法做到这一点?

【问题讨论】:

  • 这里也一样。我发现了同样的问题,覆盖范围只显示我测试过的。
  • 你现在解决这个问题了吗?
  • 还没有解决,如果我有解决方案我会在这里发布。
  • 我现在知道如何实现这一点,您必须在 _test.dart 文件中导入所有(测试和未经测试的)文件。导入 lib/ from ....
  • 有趣,这是一种缓解方法,但并不能解决问题,因为我们仍然需要做一些事情来让所有文件出现在测试中,这样我们只需改变需要测试需要导入一些测试里面的文件。

标签: flutter flutter-test


【解决方案1】:

我创建了一个small helper script 来帮助生成完整的报道报告。它会扫描您的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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-05-08
    • 1970-01-01
    • 2019-01-18
    • 2018-10-18
    • 2012-11-28
    • 1970-01-01
    • 1970-01-01
    • 2014-02-26
    相关资源
    最近更新 更多