The Unified Automation Template is designed to facilitate automated testing across Web UI, Mobile UI, and API platforms. It supports scenario tagging for selective test execution, making the process flexible and manageable.
The CommonSteps class stores the generic UI steps and saves us from the repeated code. The ObjectRepository class is used for storing the page object instances; the page objects are automatically instantiated when the element of that page is interacted with. The PageObject class is for overwriting Selenium's default field decorator to be able to use WebComponents.
- Multi-Platform Testing: Supports Web UI, Mobile UI, and API automation.
- Scenario Tagging: Enables running specific test scenarios using tags.
- Customizable Driver Selection: Defaults to Chrome for Web UI, with the option to choose other drivers.
- Headless Execution: Supports headless mode via configuration.
- Java 17
- Maven
- Appium (for mobile testing)
- Clone the repository:
git clone https://github.com/egecansen/Unified-Automation-Template.git
cd Unified-Automation-Template- Configure the
test.propertiesfile to set desired properties such as headless execution, appium configurations and api auth credentials.
- Run all tests:
mvn clean test- Run specific scenarios using tags:
mvn clean test -q -Dcucumber.filter.tags="@SCN-RestfulBooker-01"- Headless execution (adjust in
test.properties):
headless=true