2017-09-12 4 views
0

J'ai téléchargé le fichier testng-results.xml dans une branche git et j'utilise le référentiel git comme espace de travail pour le travail Jenkins. Puisque les tests que je fais sur Jenkins sont des tests de régression, je m'attendrais à ce que les rapports TestNG varient dans tous les cas où il y avait un défaut de régression. J'ai remarqué que les rapports TestNG affichés sur Jenkins ne sont qu'une version lisible du fichier testng-results.xml, c'est-à-dire une copie exacte du fichier testng-results.xml dans mon espace de travail.Les résultats de TestNG dans Jenkins affichent PASS même si le script est modifié pour générer le résultat échoué

J'ai changé le script de test ChromeTest.f() à l'échec volontairement et encore les résultats de TestNG dans Jenkins, il marque PASS selon l'image ci-dessous:

Jenkins screenshot.

S'il vous plaît trouver le fichier testng-results.xml ci-dessous:

<?xml version="1.0" encoding="UTF-8"?> 
 
<testng-results skipped="0" failed="0" ignored="0" total="9" passed="9"> 
 
<reporter-output> 
 
</reporter-output> 
 
<suite name="Default suite" duration-ms="159837" started-at="2017-09-12T16:48:30Z" finished-at="2017-09-12T16:51:10Z"> 
 
<groups> 
 
</groups> 
 
<test name="Default test" duration-ms="159837" started-at="2017-09-12T16:48:30Z" finished-at="2017-09-12T16:51:10Z"> 
 
<class name="IETests"> 
 
<test-method status="PASS" signature="beforeTest()[pri:1, instance:[email protected]]" name="beforeTest" duration-ms="18341" 
 
started-at="2017-09-12T09:48:30Z" finished-at="2017-09-12T09:48:49Z"> 
 
<reporter-output> 
 
</reporter-output> 
 
</test-method> <!-- beforeTest --> 
 
<test-method status="PASS" signature="f()[pri:2, 
 
instance:[email protected]]" name="f" duration-ms="99893" started- 
 
at="2017-09-12T09:48:49Z" finished-at="2017-09-12T09:50:29Z"> 
 
<reporter-output> 
 
</reporter-output> 
 
</test-method> <!-- f --> 
 
<test-method status="PASS" signature="afterTest()[pri:3, 
 
instance:[email protected]]" name="afterTest" duration-ms="115" 
 
started-at="2017-09-12T09:50:29Z" finished-at="2017-09-12T09:50:29Z"> 
 
<reporter-output> 
 
</reporter-output> 
 
</test-method> <!-- afterTest --> 
 
</class> <!-- IETests --> 
 
<class name="ChromeTest"> 
 
<test-method status="PASS" signature="beforeTest()[pri:4, 
 
instance:[email protected]]" name="beforeTest" duration-ms="12606" 
 
started-at="2017-09-12T09:50:29Z" finished-at="2017-09-12T09:50:41Z"> 
 
<reporter-output> 
 
</reporter-output> 
 
</test-method> <!-- beforeTest --> 
 
<test-method status="PASS" signature="f()[pri:5, 
 
instance:[email protected]]" name="f" duration-ms="1087" started- 
 
at="2017-09-12T09:50:41Z" finished-at="2017-09-12T09:50:42Z"> 
 
<reporter-output> 
 
</reporter-output> 
 
</test-method> <!-- f --> 
 
<test-method status="PASS" signature="afterTest()[pri:6, 
 
instance:[email protected]]" name="afterTest" duration-ms="243" 
 
started-at="2017-09-12T09:50:43Z" finished-at="2017-09-12T09:50:43Z"> 
 
<reporter-output> 
 
</reporter-output> 
 
</test-method> <!-- afterTest --> 
 
</class> <!-- ChromeTest --> 
 
<class name="FirefoxTest"> 
 
<test-method status="PASS" signature="beforeTest()[pri:7, 
 
instance:[email protected]]" name="beforeTest" duration-ms="24220" 
 
started-at="2017-09-12T09:50:43Z" finished-at="2017-09-12T09:51:07Z"> 
 
<reporter-output> 
 
</reporter-output> 
 
</test-method> <!-- beforeTest --> 
 
<test-method status="PASS" signature="f()[pri:8, 
 
instance:[email protected]]" name="f" duration-ms="3212" started- 
 
at="2017-09-12T09:51:07Z" finished-at="2017-09-12T09:51:10Z"> 
 
<reporter-output> 
 
</reporter-output> 
 
</test-method> <!-- f --> 
 
<test-method status="PASS" signature="afterTest()[pri:9, 
 
instance:[email protected]]" name="afterTest" duration-ms="83" 
 
started-at="2017-09-12T09:51:10Z" finished-at="2017-09-12T09:51:10Z"> 
 
<reporter-output> 
 
</reporter-output> 
 
</test-method> <!-- afterTest --> 
 
</class> <!-- FirefoxTest --> 
 
</test> <!-- Default test --> 
 
</suite> <!-- Default suite --> 
 
</testng-results>

Répondre

0

Jenkins est juste DECLENCHEMENT le test en ligne de commande puis, comme vous mentionnez l'analyse et l'affichage du fichier de résultats XML . Essayez de le sortir de Jenkins, dites en utilisant Maven, voyez-vous que ça échoue comme vous vous y attendiez? si oui, le problème n'est pas lié à Jenkins lui-même et je me concentrerais sur le code de test lui-même

0

J'ai résolu mon problème en utilisant les outils de test Maven et Junit. J'ai également ajouté tout mon espace de travail de projet dans git avant d'exécuter le test. Après la construction a couru dans Jenkins j'ai pu voir les résultats pour chaque construction. Merci à tous d'avoir aidé