Skip to content

itsamul/Hybrid-Framework-for-Automation-of-www.demo.Guru99Bank.com-v4-website

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Automation Project - Guru99Bank demo [Selenium | Java | TestNG | POM | Maven | Jenkins]

🌟 Project Title:

Automation framework for testing of Guru99Bankdemo

⚡️ Project Overview:

This project aims to create an automated testing framework using the Selenium automation tool, Java as the programming language, TestNG as the testing framework, and following the Page Object Model (POM) design pattern. The target application for this project is the Guru99Bankdemo, which is a fictional online banking site for practicing and learning test automation.
chrome_4TIjcuQDYU

⚙️ Tools, Languages Frameworks used:

The project uses the following tools, frameworks:

# Tech/Tools Name Version
1 Programming language Java 17.0.8
2 Automation tool Selenium webdriver 14.4.1
3 Testing framework TestNG 7.8.0
4 Build Tool Maven 3.9.4
5 IDE Eclipse 2023-09(4.29.0)
6 Reporting tool Extent Reports 5.1.1

📜 Project Structure :

Following is the folder structure for this project :

explorer_zWQNXivWeh

📜 Dependency using in the project:

Following are the dependencies added to the pom.xml for this project :

# Name Version
1 Selenium java 14.4.1
3 TestNG 7.8.0
4 Extent Reports 5.1.1

image

📜 Design Pattern used - Page Object Model:

Page Object Model (POM): Implement the POM design pattern. This pattern involves creating separate classes for each distinct page or section of the website under test.

Page Classes: Each page class encapsulates the web elements and methods required to interact with those elements on that specific page. This separation of concerns improves code maintainability.

Pages classes are saved under following path : "/guru99bankdemo/src/main/java/guru99bank/pages/"

qj1746UA4I

📜 Test cases :

Test Classes: Test classes that correspond to different test scenarios or functionalities are created. Tests classes are saved under following path : "/guru99bankdemo/src/test/java/guru99bank/testcases/"

D5Bg9KKgAf

Following are the test cases covered in the this Project:

  1. Login into application.
  2. Creating customer.
  3. Verifying created customer.
  4. Create new account.
  5. Verifying created account.
  6. Logging out of the application.

TestNG Annotations: TestNG annotations like @Test, @BeforeMethod, and @AfterMethod are used to organize test methods, setup, and teardown logic.

Page Object Usage: In your test methods, initialize and use the page objects to interact with web elements on the pages under test.

📜 Test Data:

Test Data: Test data such as user id and password are saved in data.properties file, Other information like customer detials and account details are stored in data providers class.
MUIVHZG33X

DataProvider.java: image

data.properties file: image

📜 Reporting:

Test Reporting: Implemented test reporting using third-party reporting frameworks - ExtentReports.
Reports are saved in the following location : "/guru99bankdemo/Reports/"
OHpyaBzM2K

Extent Report opened automatically on the default browser after the execution is completed.
chrome_S2hWiML0zU chrome_BniXRJRHB0

🏃 Running the project:

🧪 Cloning the repository:

  1. Clone automation-framework-pom-selenium-java-testng-guru99bank project from Github
  git clone https://github.com/itsamul/automation-framework-pom-selenium-java-testng-guru99bank.git
  1. Navigate to the cloned directory
  cd automation-framework-pom-selenium-java-testng-guru99bank
  1. Compile maven dependencies
  $ mvn compile

🔑 Site Credentials:

Guru99 Demo site credentials (Userid and password) are required to run test automation scripts. The userid and password will be available from the guru99 demo site homepage.

chrome_4TIjcuQDYU

📖 Set the userid and password in the data.properties file:

Replace the value for userid key and password key in the data.properties file.
MUIVHZG33X

Running the Tests Locally:

Step 1. Navigate to the cloned directory

  cd automation-framework-pom-selenium-java-testng-guru99bank

Step 2: Open command prompt and run the following command

  mvn clean test

Shown below is the execution screenshot triggered by the above command :
cmd_BAjX8FZ1ix

Step 3: Extent Report open automatically on the default browser after the execution is completed.
chrome_S2hWiML0zU