Comment continuer l'exécution lorsque l'assertion échoue
Je suis en utilisant Selenium RC à l'aide de Java avec eclipse et TestNG cadre. J'ai l'extrait de code suivant:
assertTrue(selenium.isTextPresent("Please enter Email ID"));
assertTrue(selenium.isTextPresent("Please enter Password"));
Première affirmation est échoué et l'exécution a été arrêtée. Mais je veux continuer la poursuite de l'extrait de code.
source d'informationauteur Ripon Al Wasim
Vous devez vous connecter pour publier un commentaire.
Selenium IDE utilise vérifier pour effectuer un doux affirmation, ce qui signifie que le test va se poursuivre, même si la vérification échoue, et des rapports sur les échecs à la fin de l'épreuve ou sur l'événement d'une dur de l'assertion.
Avec TestNG il est possible d'avoir ces doux affirmations en utilisant custom test (test personnalisé auditeurs. J'ai documenté la façon de faire cela sur mon blog: http://davehunt.co.uk/2009/10/08/using-soft-assertions-in-testng.html
Fondamentalement, vous avez besoin pour créer votre propre
verify*
méthodes, dans ces vous pouvez attraper les défaillances d'assertion et de les ajouter à une carte. Puis, dans un personnaliséafterInvocation
de l'écouteur vous pouvez régler le test à l'échec si la carte n'est pas vide.Je vous suggère d'utiliser des affirmations, qui sont fournis dans TestNg nativement
Source: http://rameshbaskar.wordpress.com/2013/09/11/soft-assertions-using-testng/
Changer vos affirmations à des vérifications:
J'ajoute encore l'un des moyens les plus faciles de continuer sur l'échec d'assertion. Cela a été demandé à ici.
Une fois une assertion échoue, l'exécution doit s'arrêter, c'est le point de leur utilisation.
Vous pouvez déclarer une assertion que les tests de ces deux choses, mais alors vous êtes le test de deux choses à la fois. Mieux pour corriger la cause de la première défaillance, puis passer à la deuxième assertion.