Сведения о вопросе

Математик

07:16, 8th August, 2020

Теги

Как отформатировать файл результатов тестирования Visual Studio (.trx) в более читаемый формат?

Просмотров: 536   Ответов: 5

Я только что начал использовать встроенные функции модульного тестирования Visual Studio Professional, которые, как я понимаю, используют MS Test для выполнения тестов.

Файл .trx, который производят тесты, - это xml, но мне было интересно, есть ли простой способ конвертировать этот файл в более "manager-friendly" формат?

Моя конечная цель состоит в том, чтобы иметь возможность автоматизировать модульное тестирование и иметь возможность создать красивый документ, который показывает выполнение тестов и как 100% из них прошли :)



  Сведения об ответе

fo_I_K

02:59, 14th August, 2020

Поскольку этот файл имеет значение XML, вы можете и должны использовать xsl для преобразования его в другой формат. В IAmUnkown - блоге есть запись о декодировании / преобразовании файла trx в html .

Вы также можете использовать .NetSpecExporter от Bekk для создания хороших отчетов. Их продукт также использует XSL, так что вы, вероятно, можете украсть его из загруженного файла и применить его с любым xsl-приложением, которое вы хотите.


  Сведения об ответе

+-*/

07:55, 29th August, 2020

вы также можете попробовать trx2html


  Сведения об ответе

lourence

14:21, 14th August, 2020

Если вы используете 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>


  Сведения об ответе

lourence

20:39, 19th August, 2020

Если вам нужно проверить схему перед синтаксическим анализом/преобразованием, вы можете найти файл XSD в Visual Studio install dir (через 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

каталог файлов, вместе со многими другие схемы.


  Сведения об ответе

DAAA

08:29, 18th August, 2020

Недавно я написал один конвертор trx to html, который основан на python, посмотрите https://github.com/avinash8526/Murgi


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться