刚刚开始使用 Visual Studio Professional 的内置单元测试功能,据我了解,它使用 MS Test 来运行测试。
测试生成的 .trx 文件是 xml,但想知道是否有一种简单的方法可以将此文件转换为更“管理员友好”的格式?
我的最终目标是能够自动化单元测试,并能够生成一个漂亮的文档,显示测试运行以及如何 100% 通过 :)
刚刚开始使用 Visual Studio Professional 的内置单元测试功能,据我了解,它使用 MS Test 来运行测试。
测试生成的 .trx 文件是 xml,但想知道是否有一种简单的方法可以将此文件转换为更“管理员友好”的格式?
我的最终目标是能够自动化单元测试,并能够生成一个漂亮的文档,显示测试运行以及如何 100% 通过 :)
由于此文件是 XML,您可以而且应该使用 xsl 将其转换为另一种格式。IAmUnkown - 博客有一个关于将 trx 文件解码/转换为 html的条目。
您还可以使用Bekk 的 .NetSpecExporter创建漂亮的报告。他们的产品也使用 XSL,因此您可能会从下载的文件中窃取它并将其应用于您想要的任何 xsl 应用程序。
你也可以试试trx2html
如果您使用的是 VS2008,我也有关于IAmUnknown的答案。它更新了基于 VS 2005 trx 格式的上述答案
这是一个创建可读 HTM 文件的样式表
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:t="http://microsoft.com/schemas/VisualStudio/TeamTest/2006"
>
<xsl:template match="/">
<html>
<head>
<style type="text/css">
h2 {color: sienna}
p {margin-left: 20px}
.resultsHdrRow { font-face: arial; padding: 5px }
.resultsRow { font-face: arial; padding: 5px }
</style>
</head>
<body>
<h2>Test Results</h2>
<h3>Summary</h3>
<ul>
<li>Tests found: <xsl:value-of select="t:TestRun/t:ResultSummary/t:Counters/@total"/></li>
<li>Tests executed: <xsl:value-of select="t:TestRun/t:ResultSummary/t:Counters/@executed"/></li>
<li>Tests passed: <xsl:value-of select="t:TestRun/t:ResultSummary/t:Counters/@passed"/></li>
<li>Tests Failed: <xsl:value-of select="t:TestRun/t:ResultSummary/t:Counters/@failed"/></li>
</ul>
<table border="1" width="80%" >
<tr class="resultsHdrRow">
<th align="left">Test</th>
<th align="left">Outcome</th>
</tr>
<xsl:for-each select="/t:TestRun/t:Results/t:UnitTestResult" >
<tr valign="top" class="resultsRow">
<td width='30%'><xsl:value-of select="@testName"/></td>
<td width='70%'>
<Div>Message: <xsl:value-of select="t:Output/t:ErrorInfo/t:Message"/></Div>
<br/>
<Div>Stack: <xsl:value-of select="t:Output/t:ErrorInfo/t:StackTrace"/></Div>
<br/>
<Div>Console: <xsl:value-of select="t:Output/t:StdOut"/></Div>
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
如果您需要在解析/转换之前验证架构,您可以在 Visual Studio 安装目录中找到 XSD 文件(通过http://blogs.msdn.com/b/dhopton/archive/2008/06/12/helpful -internals-of-trx-and-vsmdi-files.aspx):
请注意,XSD 架构适用于以下所有 Visual Studio 安装:
%VSINSTALLDIR%\xml\Schemas\vstst.xsd
文件目录,以及许多其他模式。
最近我写了一个基于 python 的 trx to html 转换器,看看 https://github.com/avinash8526/Murgi