Question

Est-ce que quelqu'un connaît un outil qui crachera une liste de toutes les méthodes avec l'attribut [TestMethod] dans une solution?

Ce que nous essayons d'accomplir est de revoir, avec le client, nos tests unitaires (noms, statut non réussite / échec) par rapport aux exigences. Nous utilisons VSTS 2008 et Scrum for Team Systems. Je ne savais donc pas si c'était quelque chose qui avait été construit quelque part, ou s'il s'agissait d'un outil que je devais juste combiner pour nos besoins. Toute aide est la bienvenue. Merci.

Était-ce utile?

La solution

VS propose essentiellement cette possibilité gratuitement en générant le fichier TRX afin de résumer les résultats d’un test. Il existe différentes manières d'exécuter tous les tests d'un projet, mais choisir un et off mstest exécutera chaque méthode avec l'attribut [TestMethod] et produira un UnitTestResult dans le fichier de résultats.

Ce que vous demandez, c'est essentiellement ce que la fenêtre Résultats du test vous montre après l'exécution d'un test. Si vous recherchez quelque chose de externe à VS, vous pouvez toujours exécuter une simple transformation XSLT avec le fichier de résultats de test (.trx) en vous donnant un résumé personnalisé. Voici un exemple très approximatif qui vérifie le concept, en générant un document HTML contenant une liste non ordonnée avec un élément de liste (nom et résultat du test) pour chaque test unitaire:

<?xml version='1.0'?>
<xsl:stylesheet version="1.0"
            xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
            xmlns:vs="http://microsoft.com/schemas/VisualStudio/TeamTest/2006">

    <xsl:template match="/">
        <html>
            <head>
                <style type="text/css">

                    body { font-family: verdana; font-size: 12px; }

                    .pass { color: green; }
                    .nopass { color: red; }

                    h1 { font-size: 13px; margin: 3px; }

                    ul { margin: 3px 20px 3px 40px; }
                </style>
            </head>
            <body>

                <h1>Test Results</h1>
                <ul>

            <xsl:apply-templates select="//vs:Results//vs:UnitTestResult" />

                </ul>
            </body>
        </html>

    </xsl:template>
    <xsl:template match="vs:UnitTestResult" >
        <li>
            <xsl:value-of select="@testName" />
            &#160;

            <xsl:variable name="Result">
                <xsl:choose>
                    <xsl:when test="@outcome='Passed'">pass</xsl:when>
                    <xsl:otherwise>nopass</xsl:otherwise>
                </xsl:choose>
            </xsl:variable>

            <b class="{$Result}">
                <xsl:value-of select="@outcome" />
            </b>
        </li>

    </xsl:template>
</xsl:stylesheet>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top