Comment formater le fichier de résultats de test Visual Studio (.trx) dans un format plus lisible ?

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

  •  09-06-2019
  •  | 
  •  

Question

Je viens de commencer à utiliser les fonctionnalités de tests unitaires intégrées de Visual Studio Professional, qui, si je comprends bien, utilisent MS Test pour exécuter les tests.

Le fichier .trx produit par les tests est XML, mais vous vous demandiez s'il existait un moyen simple de convertir ce fichier dans un format plus « convivial » ?

Mon objectif ultime est de pouvoir automatiser les tests unitaires et de pouvoir produire un joli document qui montre les tests exécutés et comment 100% d'entre eux ont réussi :)

Était-ce utile?

La solution

Puisque ce fichier est XML, vous pouvez et devez utiliser XSL pour le transformer dans un autre format.Le Je suis inconnu - le blog contient une entrée sur décoder/transformer le fichier trx en html.

Vous pouvez aussi utiliser .NetSpecExporter de Bekk pour créer de jolis rapports.Leur produit utilise également XSL, vous pourriez donc probablement voler à partir du fichier téléchargé et appliquez-le avec l'application XSL de votre choix.

Autres conseils

Si vous utilisez VS2008, j'ai également une réponse sur Je suis inconnu.Ce qui met à jour la réponse ci-dessus qui est basée sur le format trx VS 2005

voici une feuille de style qui crée un fichier HTM lisible

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

tu peux aussi essayer trx2html

Si vous devez valider le schéma avant de l'analyser/le transformer, vous pouvez trouver le fichier XSD dans le répertoire d'installation de Visual Studio (via http://blogs.msdn.com/b/dhopton/archive/2008/06/12/helpful-internals-of-trx-and-vsmdi-files.aspx):

Notez que les schémas XSD sont disponibles avec toutes les installations de Visual Studio dans le:

%VSINSTALLDIR%\xml\Schemas\vstst.xsd

Répertoire de fichiers, ainsi que de nombreux autres schémas.

Récemment, j'ai écrit un convertisseur trx en HTML basé sur Python, jetez un œilhttps://github.com/avinash8526/Murgi

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top