littlegreenman 2023-07-11 15:56 采纳率: 0%
浏览 8

为什么覆盖率不生效啊

用coverageas跑测试,可以跑成功但是不显示覆盖率
正文还需要三十字符,这么什么老谭设定

img

img

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-07-11 18:08
    关注
    • 这篇博客: 一步一步实现现代前端单元测试中的 2 测试覆盖率(test coverage) 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
    • 测试覆盖率是衡量测试质量的主要标准之一,含义是当前测试对于源代码的执行覆盖程度。在 karma 中使用 karma-coverage 插件即可输出测试覆盖率,插件底层使用的是 istanbul

      ~/test-demo $ npm i karma-coverage -D

      修改 karma.conf.js 文件:

      preprocessors: {
        '../src/utils.js': ['coverage'],
        './specs/utils.spec.js': ['espower']
      },
      
      reporters: ['spec', 'coverage'],
      coverageReporter: {
        dir: './coverage', // 覆盖率结果文件放在 test/coverage 文件夹中
        reporters: [
          { type: 'lcov', subdir: '.' },
          { type: 'text-summary' }
        ]
      },

      再次运行测试命令,在最后会输出测试覆盖率信息

      =============================== Coverage summary ===============================
      Statements   : 100% ( 2/2 )
      Branches     : 100% ( 0/0 )
      Functions    : 100% ( 1/1 )
      Lines        : 100% ( 2/2 )
      ================================================================================

      打开 test/coverage/lcov-report/index.html 网页可以看到详细数据
      coverage.gif

    评论

报告相同问题?

问题事件

  • 创建了问题 7月11日