【问题标题】:Angular 13 Multiple Entry Points Code CoverageAngular 13 多入口点代码覆盖率
【发布时间】:2021-12-22 06:37:05
【问题描述】:

我有一个使用@angular/cli@13.0.1 搭建的工作区,其中有多个“项目”。如果我运行ng test <main project name>,它将把来自每个入口点的所有测试组合到一个包中,并一次运行它们。这很棒,只需要大约 30 秒即可完成此操作。我不知道如何从这种类型的测试运行中收集覆盖率。

我能得到的最接近的方法是为angular.json 中的每个入口点定义一个测试架构师,但是为每个入口点构建一个浏览器包最终会花费大量时间,因为这个库有大约 41 个入口点。同样使用这种方法,作为附加步骤,读者仍可以将所有这些覆盖率报告汇总到一个报告中作为练习。

有没有人从具有多个入口点的库中收集和汇总代码覆盖率的示例?

【问题讨论】:

    标签: angular karma-coverage


    【解决方案1】:

    经过一番挖掘,我发现我只需将projects.<main-project>.sourceRoot 设置为projects/<main-project> 而不是angular.json 中的projects/<main-project>/src。与孤立地执行每个入口点然后尝试聚合覆盖率相比,这会导致整个 repo 被捆绑一次,所有测试运行并在很短的时间内收集覆盖率。

    【讨论】:

      猜你喜欢
      • 2021-01-02
      • 2018-05-08
      • 2018-05-18
      • 2022-12-16
      • 2022-11-30
      • 2018-09-30
      • 2012-06-30
      • 1970-01-01
      • 2018-01-11
      相关资源
      最近更新 更多