Wie formatiere ich die Visual Studio-Testergebnisdatei (.trx) in ein besser lesbares Format?

StackOverflow https://stackoverflow.com/questions/23446

  •  09-06-2019
  •  | 
  •  

Frage

Ich habe gerade damit begonnen, die integrierten Komponententestfunktionen von Visual Studio Professional zu verwenden, die meines Wissens MS Test zum Ausführen der Tests verwenden.

Die .trx-Datei, die die Tests erzeugen, ist XML, aber ich habe mich gefragt, ob es eine einfache Möglichkeit gibt, diese Datei in ein „managerfreundlicheres“ Format zu konvertieren?

Mein oberstes Ziel ist es, die Unit-Tests zu automatisieren und ein gut aussehendes Dokument zu erstellen, das die durchgeführten Tests zeigt und zeigt, wie 100 % davon bestanden wurden :)

War es hilfreich?

Lösung

Da es sich bei dieser Datei um XML handelt, können und sollten Sie XSL verwenden, um sie in ein anderes Format umzuwandeln.Der Ich bin unbekannt - Blog hat einen Eintrag über Dekodierung/Transformation der TRX-Datei in HTML.

Sie können auch verwenden .NetSpecExporter von Bekk um schöne Berichte zu erstellen.Ihr Produkt verwendet auch XSL, also könnten Sie das wahrscheinlich tun stehlen Laden Sie es aus der heruntergeladenen Datei herunter und wenden Sie es mit der gewünschten XSL-Anwendung an.

Andere Tipps

Wenn Sie VS2008 verwenden, habe ich auch eine Antwort Ich bin unbekannt.Dadurch wird die obige Antwort aktualisiert, die auf dem VS 2005-TRX-Format basiert

Hier ist ein Stylesheet, das eine lesbare HTM-Datei erstellt

<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>

Sie können es auch versuchen trx2html

Wenn Sie das Schema vor dem Parsen/Transformieren validieren müssen, finden Sie die XSD-Datei im Visual Studio-Installationsverzeichnis (via http://blogs.msdn.com/b/dhopton/archive/2008/06/12/helpful-internals-of-trx-and-vsmdi-files.aspx):

Beachten Sie, dass die XSD -Schemas mit allen Visual Studio -Installationen in der:

%VSINSTALLDIR%\xml\Schemas\vstst.xsd

Dateiverzeichnis zusammen mit vielen anderen Schemas.

Kürzlich habe ich einen TRX-zu-HTML-Konverter geschrieben, der auf Python basiert. Schauen Sie sich das mal anhttps://github.com/avinash8526/Murgi

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top