Selenium With Java
UI + API Cucumber BDD Automation Framework
Samendra Bandara
Components of the Framework
● Language : Java
● Tool : Selenium
● Framework : Behaviour Driven Development
● Unit Testing Framework : Junit
● Build Tool : Maven
● Api Library : Rest API
● Report : Extent Report
Framework In Detail
● All the feature files are added into a features folder
● Hooks.java is added into a step definitions package where browser initialization and login okta
happens.
● All step definitions are written in stepdefinitions package.
● All before and after steps, scenario methods are there in Hooks.java
● All API functions/methods are in CommonAPIHelper class
● All UI functions/methods are added in the CommonWebHelper class
● All Utils are added in the utils package
● All variables like file path, folder path, etc are declared in GlobalVariables.java and called as
needed
● We are assigning the api response data to the variable in the GlobalVariables and hence calling
again in another step for data validation

Selenium_Java_UI_API_Cucumber_Framework_Details.pptx

  • 1.
    Selenium With Java UI+ API Cucumber BDD Automation Framework Samendra Bandara
  • 2.
    Components of theFramework ● Language : Java ● Tool : Selenium ● Framework : Behaviour Driven Development ● Unit Testing Framework : Junit ● Build Tool : Maven ● Api Library : Rest API ● Report : Extent Report
  • 3.
    Framework In Detail ●All the feature files are added into a features folder ● Hooks.java is added into a step definitions package where browser initialization and login okta happens. ● All step definitions are written in stepdefinitions package. ● All before and after steps, scenario methods are there in Hooks.java ● All API functions/methods are in CommonAPIHelper class ● All UI functions/methods are added in the CommonWebHelper class ● All Utils are added in the utils package ● All variables like file path, folder path, etc are declared in GlobalVariables.java and called as needed ● We are assigning the api response data to the variable in the GlobalVariables and hence calling again in another step for data validation