ECommerce_TestNG_UI_Regression
FRAMEWORK COMPONENTS
- WebDriver is instantiated before a test method and quit after the method.
- A screenshot feature: a screenshot is taken after a test method fails.
- StepLogger - used for wrapping shared methods. It logs readable test steps with meaningful hardcoded element names.
- TODO: save them in external file
- TestListener - extends TestNG class TestListenerAdapter. It logs specific information about test method status, takes a screenshot and sums up the build.
- BaseTest - parent class for all test classes
- Page - parent class for all page object classes with shared and wrapped methods
- WindowsManager - a utility available to all test classes through BaseTest; serves for handling windows/tabs.
- Mechanism for failed tests - Retry class added, failed tests should be executed twice - should still work on it
- ExtentReport - test status, errors and screenshots for failed tests are presented in the report, as well as the statistic of a test run.
- Data driven testing - Data Provider class called CsvParser is added, it reads from csv files from the path resources/testData
- Explicit waits - incorporated in wrapper methods in Page class.
- BrowserFactory class for cross-browser testing - extended the framework to include Chrome and Mozilla, more browsers can be added anytime
- Visual comparison - added Ocular library
- Exception catching logic implemented in methods
- Jenkins automated pipeline - TODO
- Connection with a MySql for DDT
- A recorder of failed tests - TBD, lowest priority
- Factory - parallel test execution TODO