TestNG Annotations – @BeforeTest
The Concept Annotations is introduced in Java 1.5 (jdk5). The Popular Annotation in Java is @override. We use the same annotation concept in TestNG.
In TestNG, there are 10 Annotations
In this article, we will learn about @BeforeTest.
What is @BeforeTest?
@BeforeTest is one of the TestNG Annotations. As the name defines, @BeforeTest is executed before the execution of all the @test annotated methods inside a TestNG Suite. This annotation allows developers to specify various actions to be taken before the execution of all the @test annotated methods inside a TestNG Suite.
Example of @BeforeTest
Let’s understand the @BeforeTest annotation through an example.
Step 1: Open the Eclipse IDE.
Step 2: Create a Maven Project.
Step 3: After Creating the Maven Project, the project exploration will look like the below image.
Step 4: Create a TestNG Class that contains @BeforeTest.
1. Before_Test1.Java
package com.w3wiki.test;
import org.testng.annotations.Test;
import org.testng.annotations.BeforeTest;
public class Before_Test1 {
@BeforeTest
public void beforeTest() {
System.out.println("This method will be executed before the execution of all @Test annotated methods");
}
@Test
public void test1() {
System.out.println("Test1 Executed");
}
@Test
public void test2() {
System.out.println("Test2 Executed");
}
}
Now, let’s explain what this code does:
- Package Declaration
- Before_Test1 Class is on the com.w3wiki.test package.
- Imports
- Before_Test1 Class imports annotations and classes from the TestNG framework (org.testng.annotations.BeforeMethod and org.testng.annotations.Test).
- Before_Test1 Class
- This is the main test class.
- It contains test methods and beforeTest method.
- beforeTest (@BeforeTest):
- This method is annotated with @BeforeTest, indicating that it should be executed before test execution this suite contains many classes.
- It prints this “This method will be executed before the execution of all @Test annotated methods” statement.
- Test Methods (@Test):
- Each test method is annotated with @Test, indicating that it is a test case.
- There are two test methods: test1() and test2().
- Each test method prints their respective statement.
- After performing the operation, the result is printed to the console.
Step 5: Now, we create the AnnotationsTest.xml file to configure the Before_Test1 Class.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="suite">
<test name="test1">
<classes>
<class name="com.w3wiki.test.Before_Test1" />
</classes>
</test>
</suite>
Step 6: Run the AnnotationsTest.xml. Right click on the AnnotationsTest.xml file, move the cursor down to Run As and then click on the 1 TestNG Suite.
Contact Us