TestNG - Test d'exception
TestNG fournit une option de suivi de la gestion des exceptions du code. Vous pouvez tester si un code lève une exception souhaitée ou non. Ici leexpectedExceptionsLe paramètre est utilisé avec l'annotation @Test. Maintenant, voyons@Test(expectedExceptions) en action.
Créer une classe
Créez une classe java à tester, disons, MessageUtil.java dans C:\> TestNG_WORKSPACE. Ajoutez une condition d'erreur dans la méthode printMessage ().
/*
* This class prints the given message on console.
*/
public class MessageUtil {
private String message;
//Constructor
//@param message to be printed
public MessageUtil(String message) {
this.message = message;
}
// prints the message
public void printMessage() {
System.out.println(message);
int a =0;
int b = 1/a;
}
// add "Hi!" to the message
public String salutationMessage() {
message = "Hi!" + message;
System.out.println(message);
return message;
}
}
Créer une classe de cas de test
Créez une classe de test java, par exemple, ExpectedExceptionTest.java.
Ajoutez une exception ArithmeticException attendue au scénario de test testPrintMessage ().
Créez un fichier de classe Java nommé ExpectedExceptionTest.java dans C:\> TestNG_WORKSPACE.
import org.testng.Assert;
import org.testng.annotations.Test;
public class ExpectedExceptionTest {
String message = "Manisha";
MessageUtil messageUtil = new MessageUtil(message);
@Test(expectedExceptions = ArithmeticException.class)
public void testPrintMessage() {
System.out.println("Inside testPrintMessage()");
messageUtil.printMessage();
}
@Test
public void testSalutationMessage() {
System.out.println("Inside testSalutationMessage()");
message = "Hi!" + "Manisha";
Assert.assertEquals(message,messageUtil.salutationMessage());
}
}
Créer un testeur
Créez testng.xml dans C:\>TestNG_WORKSPACE pour exécuter des cas de test.
<?xml version = "1.0" encoding = "UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name = "Suite1">
<test name = "test1">
<classes>
<class name = "ExpectedExceptionTest" />
</classes>
</test>
</suite>
Compilez les classes de cas de test MessageUtil à l'aide de javac.
C:\TestNG_WORKSPACE>javac MessageUtil.java TestJunit.java
Maintenant, exécutez Test Runner, qui exécutera les cas de test définis dans la classe de cas de test fournie.
C:\TestNG_WORKSPACE>java -cp "C:\TestNG_WORKSPACE" org.testng.TestNG testng.xml
Vérifiez la sortie. Le cas de test testPrintMessage () sera passé.
Inside testPrintMessage()
Manisha
Inside testSalutationMessage()
Hi!Manisha
===============================================
Suite1
Total tests run: 2, Failures: 0, Skips: 0
===============================================