newcoder1010 Posted October 1, 2022 Share Posted October 1, 2022 Hello, Base.java package JavaTestNG; import org.testng.annotations.BeforeClass; import org.testng.annotations.BeforeTest; public class Base { public int x; // Invoked once when I run the xml file @BeforeTest public void beforeTest() { x=9; } // invoked once for every class @BeforeClass public void beforeClass() { System.out.println("beforeClass"); } } Test1.java import org.testng.annotations.Test; public class Test1 extends Base{ @Test public void test1() { System.out.println("test 1"); System.out.println("x " + x); } } Test2.java import org.testng.annotations.Test; public class Test2 extends Base{ @Test public void test2_1() { System.out.println("test2_1"); System.out.println("x " + x); } } Test3.java import org.testng.annotations.Test; public class Test3 extends Base{ @Test public void test3_1() { System.out.println("test3_1"); System.out.println("x " + x); } } XML: Running the xml file <!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd"> <suite name="test"> <test name="Test1"> <classes> <class name="JavaTestNG.Test1" /> <class name="JavaTestNG.Test2" /> </classes> </test> <test name="Test2"> <classes> <class name="JavaTestNG.Test3" /> </classes> </test> </suite> Console [RemoteTestNG] detected TestNG version 7.4.0 beforeClass test 1 x 9 beforeClass test2_1 x 0 beforeClass test3_1 x 9 --- As you can see, I am getting x 0 for the second test. I am not sure why x = 0 for the second test. Instead, I was expecting to have the value of 9. Can you please help? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now