gpt4 book ai didi

junit - 如何将 karma javascript junit xml 报告导入 Sonar

转载 作者:行者123 更新时间:2023-12-04 15:09:26 26 4
gpt4 key购买 nike

是否有可用于生成 results.xml 的 karma 报告器?与 Sonar 通用测试覆盖率插件兼容的文件?或者,由 karma-junit-reporter 输出的 junit 文件的解析器哪个将与通用插件一起使用?

我正在使用 SonarQube 5.3 和 Karma/Jasmine

我想将来自 karma 的 junit 报告导入 SonarQube,但看不到轻松做到这一点的方法。类似 https://www.npmjs.com/package/mocha-sonar-generic-test-coverage为了 karma

仅供引用我见过karma-junit-sonarqube-reporter ( https://www.npmjs.com/package/karma-junit-sonarqube-reporter ) 但这似乎希望测试的名称与文件的路径相匹配,这对我来说太严格了。karma-sonarqube-unit-reporter似乎未完成grunt-karma-sonar好像靠jstestdriver已弃用

最佳答案

我通过执行以下操作设法实现了这一点。

将 javascript junit 报告导入 Sonar

  • 查找和下载 sonar-karma-test-report-plugin-1.0.0.4.jar无法通过更新中心获得
  • 将 jar 文件放入 /usr/local/Cellar/sonar/5.3/libexec/extensions/plugins并重新启动 Sonar
  • 告诉 karma 省略浏览器的名称
    junitReporter: {
    useBrowserName: false
    }
  • 让 Karma 通过普通的 karma-junit-reporter 创建一个 junit xml 文件并让它调用文件 TESTS-xunit.xml (我有一个名为 test-results.xml 的文件,但 Sonar 无法检测到它 WTF)
  • sonar-project.properties文件集sonar.javascript.karmajstestdriver.reportsPath=reports/js/unit-components/results/
  • 调用 sonar-runner

  • Sonar 需要测试文件的路径才能处理报告。 Jasmine 不会向记者提供此信息。我的理解是 Sonar 插件遍历 xml 文件并找到每个具有测试名称的测试的类名(即 my cool tests )并执行字符串替换以将其更改为文件的位置

    关于junit - 如何将 karma javascript junit xml 报告导入 Sonar ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35214649/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com