我需要能够将Opencover Coverage结果导入Jenkins,以便随着时间的推移提取Coverage趋势数据。
看来,执行此操作的最佳方法是找到一种方法,将opencover xml格式转换为ncover格式,然后使用NCover插件导入结果。是否存在将opencover转换为ncover的现有xslt,或进行转换的开源工具?
我已经搜索过,却一无所获。
谢谢
最佳答案
OpenCover wiki上提供了以下XSLT,可能会让您入门。
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" indent="yes" standalone="yes"/>
<xsl:template match="/CoverageSession/Modules">
<coverage>
<xsl:for-each select="Module[not(@skippedDueTo)]">
<module name="{ModuleName}">
<xsl:for-each select="Classes/Class">
<xsl:if test="count(Methods/Method) > 0">
<class name="{FullName}">
<xsl:variable name="className" select="FullName" />
<xsl:for-each select="Methods/Method">
<method class="{$className}">
<xsl:for-each select="SequencePoints/SequencePoint">
<seqpnt visitcount="{@vc}" />
</xsl:for-each>
</method>
</xsl:for-each>
</class>
</xsl:if>
</xsl:for-each>
</module>
</xsl:for-each>
</coverage>
</xsl:template>
</xsl:stylesheet>
关于jenkins - 将opencover xml输出转换为ncover xml,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14592274/