Goalsπ―Β
Companies are shifting to open-source automated testing tools π to cut down on manual testing costs π° and effort β±. Selenium π stands out with its fast performance β‘, versatile test packages π¦, and support for unattended execution π€. Its flexibility in scripting with multiple languages π οΈ (Python π, Perl πͺ, Ruby π, PHP π, .NET, C# #οΈβ£, Java β) and compatibility with various operating systems π₯οΈ and browsers π makes it the top choice for web automation.Β
Specificationsπ οΈΒ
Candidates with no programming knowledge can join the course π. It's recommended to have a basic understanding of Core Java β. The training course covers Java Essentials for Testing With Selenium WebDriver for all participants enrolled in the Selenium course π. This course helps you brush up on the Java skills needed to work with Selenium π. And if you have any doubts along the way, our support team is always here to assist you π€
What are the system requirements for this course ?
The system requirements include Minimum 4 GB RAM, i3 processor and above,200 GB HDD
Java, Selenium, Git, & API Testing SyllabusβΒ
1. Introduction to Selenium
π What is Selenium Tool?
π€ Use of Selenium Tool in Automation
β¨ Features of Selenium Tool
βοΈ Differences Between Selenium and Other Tools
π§© Selenium Components:
Selenium WebDriver
2. Configuring Your Environment
βοΈ Configuring Eclipse IDE for Java & Selenium
π How to Create a New Java Project
π How to Create a New Java Class
βΆοΈ Running a Java Class
π Viewing the Results of a Java Program
3. Learning Java
3.1. Java Basics
π Introduction to Java Programming
π’ Data Types in Java
Primitive Data Types
π Declaring Variables
π» Writing and Running a Java Program
3.2. Object-Oriented Programming (OOP) Concepts
Classes & Objects:
π· What is a Class?
π Fields and Methods
π How to Create an Object for a Class
π Accessing Fields and Methods
Constructors:
π Using Constructors
βΉοΈ What is Abstract or Final Class?
π’ Variable Types: (Instance, Local, Static)
3.3. Polymorphism & Functions
π What is Polymorphism?
π§© Method Overloading
π Constructor Overloading
π Passing Arguments to Methods
π Calling Methods in a Class
π Returning Values or Objects from Methods
3.4. Inheritance
π¨βπ©βπ§ Why Use Inheritance?
π Reusing Fields and Methods from the Parent Class
π Overriding Fields and Methods
π Types:
Single Inheritance
Multi-level Inheritance
3.5. Encapsulation & Abstraction
π Hiding Data Using Access Specifiers:
Public, Private, Protected, Default
π Accessing Public Methods:
Within the Same Package vs. Different Package
3.6. Packages
π¦ What is a Package?
π How to Create a Package
π How to Import a Package into a Different Class
3.7. Collections
π Introduction to Collections
β Advantages Over Arrays
π Operations:
Adding, Removing, Inserting Elements
π Working with Different Collections:
List, Set, ArrayList, HashTable, LinkedList
4. Selenium WebDriver Fundamentals
4.1. Getting Started with Selenium WebDriver
π₯ Introduction to WebDriver
βοΈ Configure Eclipse IDE (Adding Selenium Libraries)
π¦ Using Firefox Driver API
4.2. Interacting with Web Elements
π€ Text Boxes
βοΈ Checkboxes & Radio Buttons
π Buttons
π Links
π Dropdown Lists:
Selecting Values from a Dropdown
π Working with Table Elements
4.3. Advanced Interaction Techniques
π± Using Actions API:
Handling Keyboard & Mouse Events
Drag and Drop Operations
π Scrolling the Window
πΈ Taking Screenshots
π» Using JavaScript Executor
4.4. Handling Browser Scenarios
π Handling Windows
π¨ Handling Alerts/Pop-ups:
Using AutoIT for Window Alerts
πΌ Handling Frames
π’ Handling Multiple Tabbed Windows
4.5. XPath and CSS
π Using XPath, DOM, and CSS Selectors
π Recognizing Dynamically Changing Elements
π£ Using Regular Expressions
5. Automation Framework & Architecture
5.1. Understanding Frameworks
π What is a Framework?
π Types of Frameworks:
Modular Framework
Data-Driven Framework
Keyword-Driven Framework
Hybrid Framework
5.2. Testing Frameworks: TestNG & Cucumber
π§ͺ Introduction to TestNG
Creating TestNG.xml File
Integrating Selenium Scripts
Running Scripts (XML, Package Level)
π TestNG Annotations:
Tags, Groups, Prioritization, Data Provider Annotation
π Using Properties Files & Reporting Results
6. Data-Driven Testing
π What is Data-Driven Testing?
π Parameterizing Data Using Excel:
Reading and Writing Data into Excel
7. Page Object Model (POM)
π¨ Design Pattern Overview
π Implementing Page Object Model in Selenium
π Advantages of Using POM
π Creating a POM in Java
8. Selenium Grid
π Introduction to Selenium Grid
π₯ Remote-WebDriver Concepts
βοΈ Configuring the Hub and Node
π Running Scripts on Remote Machines
9. Maven Integration
π§ Installing and Configuring Maven
π Handling File Upload Operations
π Utilizing Different Scripts within Maven
10. Jenkins for Continuous Integration
π€ Introduction to Jenkins
π Automating Build, Testing, and Reporting Processes
π Using Jenkins for Real-Time Testing and Continuous Integration
π Analyzing and Reporting Build Results
11. Git & GitHub
π³ Introduction to Git:
Version Control Concepts
Repository Initialization, Cloning, and Branching
π Working with GitHub:
Pushing, Pulling, and Merging Code
Collaborating Using Pull Requests
Integrating Git with Your IDE
12. API Testing Proof-of-Concept (POC)
12.1. API Testing Fundamentals
π Introduction to API Testing:
Understanding RESTful APIs
Differences Between UI Testing and API Testing
12.2. Rest-Assured for API Testing
π Getting Started with Rest-Assured:
Installation & Setup
Writing Basic API Test Scripts in Java
Validating API Responses (Status Codes, Headers, Body)
12.3. Postman for API Testing
π Introduction to Postman:
Creating and Organizing API Requests
Using Environment Variables & Collections
Automating Tests with Postman Scripts
12.4. Hands-On API Testing Projects
π Building API Test Cases:
End-to-End API Testing Scenarios
Integrating API Tests into the CI/CD Pipeline