...

/

Download & Run Sample Automation Framework

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
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’s IRetryAnalyzer 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 from CommandLineExecutor.
  • 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 of WebDriverWrapper.

  • com.example.utils.webdriver.ADBUtilities ...