- Page Object Model (POM) design pattern
- Fluent design approach
- Data Driven framework
- Java Docs
![Screenshot 2023-08-18 011751](https://private-user-images.githubusercontent.com/68038931/261452372-67894bff-1407-4f45-b92e-027d484fd8ee.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTY1NTAxMTIsIm5iZiI6MTcxNjU0OTgxMiwicGF0aCI6Ii82ODAzODkzMS8yNjE0NTIzNzItNjc4OTRiZmYtMTQwNy00ZjQ1LWI5MmUtMDI3ZDQ4NGZkOGVlLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA1MjQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNTI0VDExMjMzMlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPThiNDYzNWRhYzRlYjNmYjYwMDc3ZGI2MTM1MDRhZTQ3MzVjMjgwMDBkZjZjNGZkZDViMGQ4YTVmMDBlNjQ4N2EmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.YWm0Y2l8QHJkC4h9gBHH76Rn-rnK1vP3N32D9qrgzj8)
- install Java JDK-17 &
set JAVA_HOME: C:\Users\yourUserName\jdk-17.0.8_windows-x64_bin\jdk-17.0.8
- Appium 2.0
npm install -g appium@next
- Maven
1-install maven 2-open Environment variables 3-open path and add C:\Users\yourUserName\apache-maven-3.9.4-bin\apache-maven-3.9.4\bin
- Android Emulator
you can use Android Studio
- set new Environment variable:
ANDROID_HOME: C:\android-studio\data\sdk
- Add 3 variables to the path in user variables:
%ANDROID_HOME%\bin
%ANDROID_HOME%\tools
%ANDROID_HOME%\platform-tools
- Start appium server:
appium
- start android emulator
use Android Studio AVD Manager
-
to run a specific testclass:
mvn test -Dtest="PackageName.TestClassName"
-
to run all the test classes in the package:
mvn test -Dtest="PackageName**"
-
to run a specific test case:
mvn test -Dtest="PackageName.TestClassName#TestMethodName"
-
🗃 Generate reports: Summary Report & Allure Report will open automatically after Execution.
![allure](https://private-user-images.githubusercontent.com/68038931/261446657-6fe4b50c-7806-4319-99c4-b4b575a3e00d.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTY1NTAxMTIsIm5iZiI6MTcxNjU0OTgxMiwicGF0aCI6Ii82ODAzODkzMS8yNjE0NDY2NTctNmZlNGI1MGMtNzgwNi00MzE5LTk5YzQtYjRiNTc1YTNlMDBkLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA1MjQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNTI0VDExMjMzMlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTEzYmY1OGY0YTYwNmJhOWZmOWFkNDVkOGM3ZDQ4YTk4Y2E2MjY3MDA2NjMyOTdkMjhiODJlNmM1OTFiYjkzOTEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.yMatAOL2hgXmE4aFsVpwk30CNWbUlEaPt8aicNOtSeI)
![allure2](https://private-user-images.githubusercontent.com/68038931/261446850-3e1f91c1-3d6d-4f3d-93a5-09d2d5ffbcc7.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTY1NTAxMTIsIm5iZiI6MTcxNjU0OTgxMiwicGF0aCI6Ii82ODAzODkzMS8yNjE0NDY4NTAtM2UxZjkxYzEtM2Q2ZC00ZjNkLTkzYTUtMDlkMmQ1ZmZiY2M3LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA1MjQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNTI0VDExMjMzMlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTRkYjkzZjk0YjM2MDY5OWYwNTM1MmE0MThjMzI0NTdiYzFhY2MyNjJiMTA1N2I1NmNmNzA2MWQ5M2NiM2NiYWMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.Y0ZWr3NMohUZvwLaYplD0yxYotpSUJthrx1CVu39g_k)
![summary1](https://private-user-images.githubusercontent.com/68038931/261446941-8eebae33-57f4-434c-8484-e855c9076a98.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTY1NTAxMTIsIm5iZiI6MTcxNjU0OTgxMiwicGF0aCI6Ii82ODAzODkzMS8yNjE0NDY5NDEtOGVlYmFlMzMtNTdmNC00MzRjLTg0ODQtZTg1NWM5MDc2YTk4LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA1MjQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNTI0VDExMjMzMlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTE5NWMyNmEwMGIwMzRiOWY3NzFkMzllZjZjYjE3ZWZiY2UyMjUyMzRkMzY2YTk2NTE0OTFmNjg5MTUzM2UwNjkmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.-7AvvlRx5P_rReKZRm_b9g-pCD5HAWODAg-D4YHWia0)
![summary2](https://private-user-images.githubusercontent.com/68038931/261446972-7f5601a7-afe0-4326-bcbb-a61b8445fea6.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTY1NTAxMTIsIm5iZiI6MTcxNjU0OTgxMiwicGF0aCI6Ii82ODAzODkzMS8yNjE0NDY5NzItN2Y1NjAxYTctYWZlMC00MzI2LWJjYmItYTYxYjg0NDVmZWE2LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA1MjQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNTI0VDExMjMzMlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWE2NmMyYWJhNzYwOTBiMDc3M2UxYTNiZDU5Y2QwOTIwNGZiN2Y2ZTdmZDI0NzY1YTYxZWVjMThhYjI4MGRlOTAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.uAyU0FnzL-cmZ0hr93osQmyyAcsQj0WHjDCsLfULHHs)
Id | Suite | Name | Error | Status | Has issue |
---|---|---|---|---|---|
1 | sauceLabsTests.LoginFeatureTest | TC1: login Using Valid Email And Password | ✅ PASSED | No | |
2 | sauceLabsTests.LoginFeatureTest | TC2: login Using Invalid Email or Password/td> | ✅ PASSED | No | |
3 | sauceLabsTests.CartFeatureTest | TC3: Add Item To The Cart And Validate Title And Price Of The Item | ✅ PASSED | No | |
4 | sauceLabsTests.CartFeatureTest | TC4: Removing Items From The Cart And Validate That The Cart Is Empty | ✅ PASSED | No | |
5 | sauceLabsTests.CartFeatureTest | TC5: Online Ordering E2E Scenario | ✅ PASSED | No |