Careeroza
Real World Example
Cross-Browser Matrix for a Travel Site
A travel booking site (MakeMyTrip or an airline portal) must work on Chrome, Edge, Firefox and Safari. The team keeps one <test> block per browser and runs them in parallel on a cloud grid; inside each block, methods run in parallel too.
Example
testng-crossbrowser.xml
<suite name="Booking Cross Browser" parallel="tests" thread-count="4">
<test name="Chrome" parallel="methods" thread-count="3">
<parameter name="browser" value="chrome"/>
<classes><class name="com.travel.tests.FlightBookingTest"/></classes>
</test>
<test name="Edge" parallel="methods" thread-count="3">
<parameter name="browser" value="edge"/>
<classes><class name="com.travel.tests.FlightBookingTest"/></classes>
</test>
<test name="Firefox" parallel="methods" thread-count="3">
<parameter name="browser" value="firefox"/>
<classes><class name="com.travel.tests.FlightBookingTest"/></classes>
</test>
<test name="Safari" parallel="methods" thread-count="3">
<parameter name="browser" value="safari"/>
<classes><class name="com.travel.tests.FlightBookingTest"/></classes>
</test>
</suite>Example output
=============================================== Booking Cross Browser Total tests run: 32, Passes: 31, Failures: 1, Skips: 0 =============================================== FAILED: Safari > FlightBookingTest.selectReturnDate org.openqa.selenium.ElementClickInterceptedException: Element <button class="day">...</button> is not clickable at point (412, 618). Other element would receive the click: <div class="cookie-banner">
What the Team Learned
- Twelve parallel sessions finished the 32 tests in 6 minutes instead of 70.
- The Safari-only failure was a real bug: the cookie banner covered the calendar only on Safari.
- They run the full matrix nightly and only Chrome on every pull request to save grid minutes.