Mobile E2E Automation
Appium × Toucher
Bowls Scoring
Java · TestNG · Page Object Model
UiAutomator2 Allure Reports BrowserStack Maven
Framework
AndroidTesting Maven project structure
LoginPage · ScorePage · AddUserPage · DriverFactory · testng.xml
LoginPage.login()
9:41●●●
Sign In using account
Enter Email Address
Enter Password
Sign In
Bowls Rules
public void login(String email, String password) {
appTest.click(signInHeader);
appTest.write(usernameTXT, email);
appTest.write(passwordTXT, password);
appTest.click(loginBTN);
validateLogin(); // Bowls Rules
}
UiAutomator locators · test@outlook.com · openMobileApp1
ScorePage · AddUserPage
9:41●●●
Scoring
Round 1 Round 2 Round 3
1
2
3
4
5
6
7
8
WE Team
Alice123 Bob456 Charlie789
They Team
Dave101 Eve202
// openMobileApp — full smoke
scorePage.rulescreen();
scorePage.AddRoundName("Round 1");
scorePage.AddScore(numbers);
addUserPage.Add_WE_Members(names, 5);
addUserPage.Add_They_Members(names, 5);
scorePage.changeround();
3 rounds · swipe scroll · invalid member → openMobileApp3 fails
Cloud Execution
BrowserStack Test Reporting dashboard
mvn test -Pbrowserstack · Pixel 8 · network logs · debug
SmokeTesting Suite · 7 tests
openMobileApp
PASS
openMobileApp1
PASS
openMobileApp2
FAIL
openMobileApp3
FAIL
openMobileApp4
PASS
Allure run · 42.85% · Test defects
3/7
Allure Report dashboard — SmokeTesting
Allure Report
Allure Report overview — 42.85% pass rate
io.qameta.allure.testng.AllureTestNg · 36m run · suites & categories
📱
Appium Mobile CI
POM · Allure · BrowserStack · TestNG
github.com/ZeeshanMustafaJumabhoy/AndroidTesting