微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

有没有办法从业力覆盖文本报告器结果中排除所有具有 100% 或阈值的文件?

如何解决有没有办法从业力覆盖文本报告器结果中排除所有具有 100% 或阈值的文件?

这对我来说很挑剔,我知道,但我有一个大型 Angular 应用程序,其中许多文件被 100% 或非常接近它覆盖,我想排除这些结果,所以我可以处理我需要并且没有所有额外的噪音。

我不想按名称排除文件,因为如果它们发生更改,它们可能会低于 OK 阈值。

我的karma.conf.js(我知道我可能不需要某些插件,这是团队共享的文件):

// Karma configuration file,see link for more information
// https://karma-runner.github.io/1.0/config/configuration-file.html

module.exports = function (config) {
  config.set({
    basePath: '',frameworks: ['jasmine','@angular-devkit/build-angular'],plugins: [
      require('karma-jasmine'),require('karma-chrome-launcher'),require('karma-jasmine-html-reporter'),require('karma-coverage'),require('@angular-devkit/build-angular/plugins/karma')
    ],reporters: ['progress','coverage'],coverageReporter: {
      reporters: [
        {type: 'text'},{type: 'text-summary'},]
    },browsers: ['ChromeHeadless'],preprocessors: {'**/*.ts': ['coverage']},restartOnFileChange: true,});
};

我将尝试在此处附上我的示例输出的屏幕截图,类型为:'text'coverageReporter:

sample from text coverageReporter

我尝试搜索 SO 和 karma / karma-coverage 文档,但我只能通过名称或更新阈值找到排除文件/路径,但后者似乎仅用于确定显示的颜色。谢谢~

编辑:而且由于我每个目录只有一个文件,因此通过为目录及其下的一个文件打印数字来避免重复数字也很有用。想我可能只需要深入研究并创建拉取请求或其他东西。

解决方法

为此,您可以生成 HTML 格式的覆盖率报告。在那里,您可以选择根据代码覆盖率对文件进行排序。

sample code coverage HTML report

要启用此类报告,您必须在 karma 配置中更新 coverageReporter 属性 -

coverageReporter: {
    includeAllSources: true,dir: 'coverage/',reporters: [
        {type: 'text'},{type: 'text-summary'},{type: 'html',subdir: 'html/'}
      ]
    },

报告将在 coverage/html 文件夹中生成。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。