Download & Run Sample Automation Framework
Learn how to download and run the sample framework developed using the design principles we discussed in the previous lesson.
Downloading framework code
A sample framework developed using the discussed concepts can be downloaded here.
Project structure
Project Structure of the Sample Automation Framework
src/main/java
com.example.Channel
: an enum class to hold the constants mobile, Android, iOS.com.example.Platform
: an enum to hold constants Linux, Windows, Mac.com.example.ScrollDirection
: an enum to hold the constants up, down, left, right.
com.example.listener.RetryAnalyzer
: an implementation of TestNG’sIRetryAnalyzer
for retrying tests on failure.
com.example.utils.BaseTest
: a base class that all the test classes need to extend. It contains the TestNG listener method to perform tasks at the start and end of test methods, test classes, etc.com.example.utils.CommandLineExecutor
: a utility class for executing system commands.com.example.utils.CommandLineResponse
: a POJO class for saving response fromCommandLineExecutor
.com.example.utils.CommonUtilities
: a utility class that contains a few commonly used methods in string manipulation, download from URL.com.example.utils.ConfigManager
: a utility class for managing configuration parameters. It reads from JVM arguments, project-specific config.properties, or default.properties if not found anywhere.com.example.utils.ProcessUtils
: a utility class containing methods to check the processes status.
-
com.example.utils.po.AbstractBasePage
: a class that all the page objects need to extend. It helps us to manage locators and gives the reference ofWebDriverWrapper
. -
com.example.utils.webdriver.ADBUtilities
...