Careeroza
Suite XML and Groups
testng.xml
testng.xml describes what to run: which classes, which groups, and how (parallel, parameters).
testng.xml
testng.xml
<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
<suite name="ShopEase Regression" verbose="1">
<parameter name="browser" value="chrome"/>
<test name="Smoke">
<groups>
<run><include name="smoke"/></run>
</groups>
<classes>
<class name="com.shopease.tests.LoginTest"/>
<class name="com.shopease.tests.SearchTest"/>
<class name="com.shopease.tests.CartTest"/>
</classes>
</test>
</suite>Groups
@Test(groups = {"smoke", "regression"})
public void validLogin() { ... }
@Test(groups = "regression")
public void lockedUserSeesError() { ... }
@Parameters("browser")
@BeforeMethod(alwaysRun = true) // alwaysRun: also runs when only some groups are selected
public void setUp(String browser) { driver = DriverFactory.create(browser); }Example
Run one group from the command line:
mvn test -Dgroups=smokeExample output
[INFO] Tests run: 12, Failures: 0, Errors: 0, Skipped: 0 [INFO] BUILD SUCCESS
Tip: Typical groups: smoke (10 minutes, every build), regression (full, nightly), sanity, and feature groups like cart.