Module 1: Introduction to Automation Testing and processes
- Test Automation Fundamentals
- Types of Applications (Desktop, Web, Mobile, and Hybrid)
- Software Testing Methods (Manual and Test Automation)
- Test Automation Types (Unit Testing, API Testing, and GUI Testing)
- Test Automation Frameworks
- Test Automation Tools – Licensed & Open Source
- Test Automation Process
Module 2: Introduction to Selenium Suite
- Introduction to Selenium Suite
- Quick Introduction about Selenium WebDriver?
- Selenium IDE and it’s details
- Introduction to Selenium Grid
- Selenium vs. Other Testing Tools
- Features of Selenium
- Integration of Selenium with Other Tools
Module 3: Test Automation Fundamentals
- Automated Testing
- Benefits of Automation Testing
- Limitations of Automation Testing
Module 4: Locator Techniques & Tools used to identify Objects
- Introduction to element locators
- Types of Element Locators
- Writing Xpath Manually
- Types of Xpath
- findElement & FindElements
- Element locators on different browsers
Module 5: Eclipse IDE Installation and Java Introduction
- Installation of Java
- Installation of Eclipse IDE
- Creating Project in eclipse
- Writing & Executing programs in Eclipse IDE
- Eclipse and Selenium together
- Debugging using Eclipse
- Why Java?
- Platform Independence in Java
- Explain Java Program Structure and Naming Convention
- Java Data Types and Variables and Output Statement
- Basic Operators in Java
- Features of Java
- Keywords and Syntax
Module 6: Java Fundamentals
- Classes and Objects
- Conditional Statements – If Else, Nested If Else, Switch etc.
- Loops & Iterative Statements – While, Do While, For, Foreach loops etc.
- Comments in Java
- Access Specifiers
- Java Methods
- Constructors & Keywords – break or continue
- What is Object Oriented Programming?
- OOPS Concepts
Module 7: Arrays and Collections in Java
- What is Array
- Advantages of Array in Java
- Working with Array and ForEach loop
- Packages, Classes and Objects
- What are Packages
- Creating packages , Class & Objects
- Types of Methods
- Writing user defined methods
- Inheritance – Introduction, Advantage, Types & Examples of Inheritance
- Polymorphism – Intro, Method Overload, Method Override and examples
- Abstraction, Interface & Encapsulation
Module 8: Selenium Web Driver
- Introduction to selenium
- Advantages of web driver
- Web Driver v/s RC
- Architecture of Web Driver and RC
- Configure Selenium with Eclipse IDE(Adding Selenium jar files)
- Working with drivers Firefox, Chrome &IE, etc…
- Creating the generic scripts in Web Driver
- Navigate methods
Module 9: Handling Alerts and Modal Dialog Box in Selenium
- Handling alerts
- Alert interface methods
- Handling Frames/Iframes
- Locating Frames
- Switching between Frames
- Using window handler methods
- Switching between windows
Module 10: Drop down, Web Table, Page back commands
- Handling dropdown
- Select class methods
- Select Single value & multiple values
- Reading data from web table
- Page back commands
Module 11: Synchronization in Selenium with Wait
- Introduction of wait Methods
- Use of Wait methods in selenium
- Types of Wait Methods
- Difference between Thread.sleep, ImplicitWait & ExplicitWait
- Different Expected Conditions in Webdriver
Module 12: Selenium Grid and Robot Class
- Introduction to Selenium Grid
- Deploy a Grid
- Introduction to Robot Class
- Methods under Robot Class – Key Press, Key Release, Mouse Press, Release and Move
- Implementation of the Robot Class
- Advantages and Disadvantages of the Robot Class
- Selenium Robot Framework for Page Crawling and Data Extraction
Module 13: Selenium IDE and Page Object Model
- What is Selenium IDE?
- Features of Selenium IDE
- Selenium IDE Interface
- Selenese in Selenium IDE
- Why Page Object Model (POM)?
- What is Page Factory?
- Implementing POM Using Selenium WebDriver
- Implementing POM with Page Factory
Module 14: Automation Frameworks Basics
- Introduction to Selenium Frameworks
- Types of Selenium Frameworks
- Introduction to Data-Driven Test Framework
- Advantages and Disadvantages of Data-Driven Test Framework
- Best Practices of Data-Driven Testing
- Apache POI
- Data Providers
Module 15: TestNG and Junit in Selenium
- Introduction to TestNG
- Advantages of TestNG over Junit
- TestNG Features & Configure TestNG with Eclipse
- Writing Selenium testing script from scratch
- Running the Test
- Checking the reports generated by TestNG
- Annotations used in TestNG
- Prioritizing Tests
- TestNG with Excel data
Module 16: Advanced TestNG concepts
- Create Testng.xml
- Creating and running Test suites using TestNG & Skipping Tests
- Setting priority of execution for test cases
- Executing group of regression/sanity/smoke test cases using TestNG
- Printing the log statements in TestNG report
- Running Parallel and Distributed tests
- TestNG Results output folder walkthrough
********************** Third Party Tools Integration with Selenium **********************
Module 17: Log4j
- Log4j Introduction
- Usage of Logger
- Add Log4j Jars
- Integrate Log4j in Selenium
- How to Integrate Log4j in Framework
Module 18: Jenkins Integration
- Why Jenkins
- Installation of Jenkins
- Steps to integrate Jenkins
- Configure Email notification in Jenkins
- Scheduling Jenkins Jobs
- Integration with Selenium Scripts and Running Scripts
- Creating Batch file & Executing scripts using batch file
Module 19: Git Hub Integration
- What is Git Hub
- How to create Git Hub Account
- Setup of GitHub in Eclipse
- What is Commit and push
- Steps to perform Push and Commit
- Integrating with Framework
Module 20: Maven Integration
- What is Maven
- Using the pom.xml file
- Setting up the Maven project in eclipse editor
- Building and running the selenium Maven project
- Adding Dependencies to pom.xml
- Updating the selenium project dependencies by using Maven
Module 21: BDD Framework with Cucumber
- Agile Testing
- Behavior Driven Development (BDD)
- Advantages and Limitations of BDD
- Cucumber Fundamentals—About Cucumber
- Gherkin Syntax in Cucumber
- Step Definition for Cucumber Feature File
- Advantages of Cucumber
- Implementing BDD Framework Using Cucumber
Module 22: REST APIs in Java
- Introduction to Web Services
- Protocol used in web services
- Components of web services
- REST API response codes
- Commonly used REST API HTTP methods
- Sample program to run API
********************** Selenium Real Time Project Examples **********************
Module 23: Real Time Project Example 1, 2
- Introduction to Realtime Project Examples 1, 2
- Build Project Examples 1, 2 for Realtime scenarios
- Test the Project Examples and debug the if required
Module 24: Real Time Project Example 3, 4
- Introduction to Realtime Project Examples 3, 4
- Build Project Examples 3, 4 for Realtime scenarios
- Test the Project Examples and debug the if required
Module 25: Real Time Project Example 5, 6
- Introduction to Realtime Project Examples 5, 6
- Build Project Examples 5, 6 for Realtime scenarios
- Test the Project Examples and debug the if required
Module 26: Real Time Project Example 7, 8
- Introduction to Realtime Project Examples 7, 8
- Build Project Examples 7, 8 for Realtime scenarios
- Test the Project Examples and debug the if required
Module 27: Real Time Project Example 9, 10
- Introduction to Realtime Project Examples 9, 10
- Build Project Examples 9, 10 for Realtime scenarios
- Test the Project Examples and debug the if required
Module 28: Real Time Project Example 11, 12
- Introduction to Realtime Project Examples 11, 12
- Build Project Examples 11, 12 for Realtime scenarios
- Test the Project Examples and debug the if required
Module 29: Real Time Project Example 13, 14
- Introduction to Realtime Project Examples 13, 14
- Build Project Examples 13, 14 for Realtime scenarios
- Test the Project Examples and debug the if required
Module 30: Real Time Project Example 15 + Course Revision
- Introduction to Realtime Project Example 15
- Build Report 15 for Realtime scenario
- Course Revision
Module 31: Resume Preparation, Interview and Job Assistance
- Prepare Crisp Resume as Selenium Test Engineer
- Discuss common interview questions in Selenium
- Explain students what jobs they should target and how