我们可以合并报道报告Jest和Mocha吗?

时间:2018-10-05 09:46:30

标签: javascript jestjs nyc

合并覆盖率报告Jest和摩卡时出现问题。目前,我可以导出每个。有什么解决办法吗?

开玩笑:

enter image description here

摩卡咖啡覆盖率: enter image description here

2 个答案:

答案 0 :(得分:0)

我如何做:

1)获取mocha和jest(我使用了不同的技术)来生成lcov文件作为输出。您必须检查相应的文档,但是lcov是许多系统的标准输出选项之一

2)将其与其中一种工具合并。我使用的是Linux lcov。这是脚本摘录:

cp test/coverage/lcov.info cov-data/unit.info
cp bdd/coverage/lcov.info cov-data/it.info
#fixing the absolute folder to relative ones
sed -i -E 's,(SF:).*(/app/.*),\1.\2,' cov-data/unit.info
sed -i -E 's,(SF:).*(/app/.*),\1.\2,' cov-data/it.info
lcov --add-tracefile cov-data/unit.info -a cov-data/it.info -o cov-data/common.info --rc lcov_branch_coverage=1

3)现在,您有了common.info文件,其中包含两次运行的联合覆盖率数据。您需要做的就是以某种方式可视化它。我建议您使用声纳,因为它还会为您进行静态代码分析。您将必须创建指向源和coverage的配置。并且,当然,您将必须运行声纳服务器的实例(可以在虚拟机或/和docker中完成)。

https://www.sonarqube.org/

答案 1 :(得分:0)

给定的解决方案需要linux lcov。 如何自动合并报表?例如,一些脚本在github上的postbuild中定义,以便覆盖后,报告将自动合并,并最终由sonarqube接收。