¿Cómo formato el archivo de resultados de la prueba de Visual Studio (.trx) en un formato más legible?

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

  •  09-06-2019
  •  | 
  •  

Pregunta

Acabo de comenzar a usar las funciones de prueba unitarias integradas de Visual Studio Professional, que, según tengo entendido, utiliza MS Test para ejecutar las pruebas.

El archivo .trx que producen las pruebas es xml, pero me preguntaba si había una manera fácil de convertir este archivo a un formato más "amigable para el administrador".

Mi objetivo final es poder automatizar las pruebas unitarias y poder producir un documento atractivo que muestre las pruebas ejecutadas y cómo pasaron el 100% de ellas :)

¿Fue útil?

Solución

Dado que este archivo es XML, podría y debería usar xsl para transformarlo a otro formato.El Soy desconocido - el blog tiene una entrada sobre decodificar/transformar el archivo trx en html.

También puedes usar .NetSpecExporter de Bekk para crear bonitos informes.Su producto también utiliza XSL, por lo que probablemente puedas robar desde el archivo descargado y aplíquelo con cualquier aplicación xsl que desee.

Otros consejos

Si está utilizando VS2008, también tengo una respuesta sobre Soy desconocido.Lo que actualiza la respuesta anterior que se basa en el formato trx VS 2005

aquí hay una hoja de estilo que crea un archivo HTM legible

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

también puedes intentarlo trx2html

Si necesita validar el esquema antes de analizarlo/transformarlo, puede encontrar el archivo XSD en el directorio de instalación de Visual Studio (a través de http://blogs.msdn.com/b/dhopton/archive/2008/06/12/helpful-internals-of-trx-and-vsmdi-files.aspx):

Tenga en cuenta que los esquemas XSD están disponibles con todas las instalaciones de Visual Studio en:

%VSINSTALLDIR%\xml\Schemas\vstst.xsd

Directorio de archivos, junto con muchos otros esquemas.

Recientemente escribí un convertidor de trx a html basado en Python, eche un vistazohttps://github.com/avinash8526/Murgi

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top