When using TestNG, If multiple test classes inherit a class containing a @BeforeTest method, will it run only once or everytime when each of the classes are called in the test case?
When I run the below code, the text "BEFORE TEST EXECUTED" is printed only once. Though both the test classes have this method inherited.
public class masterclass
{
@BeforeTest
public void show()
{
sout("BEFORE TEST EXECUTED")
}
}
Test Class-1:
public class TestClass1 extends masterclass
{
@Test
public void testA1() { }
}
Test Class-2:
public class TestClass2 extends masterclass
{
@Test
public void testB1() {}
}
XML of the test Case :
<suite name="testSuite">
<test name="MytestCase" >
<classes>
<class name="com.ui.test.TestClass1" />
<class name="com.ui.test.TestClass2" />
</classes>
</test>
</suite>