Over a million developers have joined DZone.
Platinum Partner

TestNG @BeforeClass Annotation Example

TestNG method that is annotated with @BeforeClass annotation will be run before the first test method in the current class is invoked.

· Java Zone

The Java Zone is brought to you in partnership with ZeroTurnaround. Check out this 8-step guide to see how you can increase your productivity by skipping slow application redeploys and by implementing application profiling, as you code!

TestNG method that is annotated with @BeforeClass annotation will be run before the first test method in the current class is invoked.

Here is a quick example

Code

package com.skilledmonster.example;
import org.testng.Assert;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
/**
* Example to demonstrate use of @BeforeClass annotation of TestNG framework
*
* @author Jagadeesh Motamarri
* @version 1.0
*/
public class TestNGAnnotationBeforeClassExample {
@BeforeClass
public void oneTimeSetUp() {
System.out.println("@BeforeClass: The annotated method will be run before the first test method in the current class is invoked.");
}
@Test
public void validateSum() {
System.out.println("@Test : validateSum()");
int a = 5;
int b = 10;
Assert.assertEquals(a + b, 15);
}
@Test
public void validateDifference() {
System.out.println("@Test : validateDifference()");
int a = 5;
int b = 10;
Assert.assertEquals(b - a, 5);
}
}

Output

 testng_beforeclass_annotation 

As shown in the above console output, oneTimeSetUp() method is invoked before executing validateDifference() and validateSum() methods.

Download

The Java Zone is brought to you in partnership with ZeroTurnaround. Check out this 8-step guide to see how you can increase your productivity by skipping slow application redeploys and by implementing application profiling, as you code!

Topics:
java,tips and tricks,testng

Published at DZone with permission of Jagadeesh Motamarri , DZone MVB .

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}