Automation Testing with Selenium Course

Automation Testing with Selenium Curriculum

  • Learn about the origins and evolution of Selenium, an open-source automation testing tool, and its integration with Java for building robust test automation frameworks.
  • Step-by-step instructions on installing Java Development Kit (JDK) and configuring Selenium WebDriver to set up the development environment for Java-based Selenium testing
  • Understand the essential Java concepts and features required for effectively using Selenium WebDriver, including object-oriented programming principles and basic syntax.
  • Learn how to configure Selenium WebDriver for testing on various web browsers (Chrome, Firefox, etc.) and execute test scripts to ensure cross-browser compatibility.
  • Identifying locators(id,name,linktext,partiallinktext,className)
  • Identifying xpath in chrome and Firefox browsers using chropath
  • Identifying CSS locators with chrome and Firefox Add-ons
    Practice
  • Techniques to automate WebElements
  • Handling Static and Dynamic dropdowns with Webdriver API
  • Handling checkboxes
  • Handling Radiobuttons with customized xpath
  • Handling Radiobutton dynamically
  • Types of Alerts and Methods to handle them
  • Handling Java Alerts
  • WebElements validations
  • disabled/enabled UI Elements validations
  • End-to-end scenarios etc
  • Understand synchronization techniques to handle timing issues and ensure that test scripts wait for web elements to load properly before performing actions, enhancing test reliability.
  • Implicit wait with real-time scenario
  • Explicit wait with real-time scenario
  • Window handle concepts
    Handling multiple windows
  • Handling ajax/mouse interactions
  • Actions classes
  • Working with child-windows
  • Handling Frames
  • Real-time exercises
  • Optimized solutions for printing links
  • Limiting Webdriver scope
  • Opening links in seperate tabs and getting titles of it
  • Handling different Calenders
  • Identify common challenges in Selenium test automation and learn practical solutions and best practices to overcome them, improving test efficiency and reliability
  • Identifying frames from HTML view
  • Element Hidden or invisible-how to validate
  • Writing Generic functions to identify frames/windows
  • Handling multiple frames
  • Handling Auto suggestive dropdown options
  • Working with Javascript Executors
  • Handling HTTP certifications
  • Taking Screenshots in Selenium
  • Killing the Process and Cookies using Selenium
  • Customized way of identifying locators
  • Set up and utilize Selenium Grid to perform parallel execution of test scripts across multiple browsers and environments, optimizing test execution time.
  • Registering Hub with nodes for execution
  • Registering nodes with Browser drivers
  • Importance of DesiredCapabilities and Remote Webdriver
  • Cross-browser testing rules
  • Master the TestNG testing framework for organizing and executing test cases, generating test reports, and implementing advanced testing features like data-driven and parameterized testing.
  • Usage Advantages
  • Running testcases in TestNG without Java compiler
  • Importance of xml file in TestNG configuration
  • Prioritizing the Test cases with TestNG
  • Include and Exclude mechanism to control Testcases
  • Usage of Groups functionality in TestNG
  • TestNG Annotations parts
  • Parameterising from TestNG xml file
  • DataProvider Annotation – Parameterizing testcases
  • Listeners Interface in TestNG framework
  • Running Tests in parallel and generate Reports
  • Learn how to set up global environmental variables and create reusable components to enhance test maintainability, scalability, and reusability in Selenium automation.
  • How to write Global parameters with java code
  • Why we should not hard code with data ?
  • Data driving parameterization from Properties file
  • How to deal with reusable components
  • Understand Maven’s role as a build management tool for Java projects and its integration with Selenium automation projects for dependency management and project structuring.
  • Importance of Maven in Framework development
  • Installing and configuring Maven
  • Understanding Terminologies of Maven
  • Creating Maven Project and importing into eclipse
  • Understanding POM.xml file and its dependencies
  • Importance of Jenkins in Test frameworks
  • Install and configure Jenkins
  • Configuring Jenkins Settings and Workspace
  • TestNG Reports for Jenkins Jobs
  • Implement data-driven testing using Excel spreadsheets as a data source to drive test scenarios and parameterize test inputs, enhancing test coverage and flexibility.
  • Apache POI API and Download instructions
  • Strategy to Access Excel Data
  • Practice exercises
  • Integrate logging frameworks like Log4j with Selenium test automation to capture test execution logs, debug issues, and improve test traceability and maintainability.
  • Log4j and its usage
  • Importing log4j into Eclipse project
  • Importance of log4j xml file
  • Testcase logging with log4j example
  • Learn the Page Object Model (POM) design pattern and Page Factory concept to create maintainable and modular test automation frameworks, enhancing code reusability and readability.
  • What is POM ?
  • Creating page object
  • Constructor in classes
  • OR Mechanism
  • Page factory annotations
  • Practical examples explaining Page factory model
  • Build a robust test automation framework from scratch using Selenium WebDriver, incorporating best practices, design patterns, and modular architecture for scalable and maintainable automation.
  • Creating Maven Project with eclipse integration
  • Configure framework dependencies in POM.xml
  • Implement Pageobject Mechanism to drive tests
  • Creating multiple tests with centralized data
  • Parameterizing the Tests with multiple data with TestNG
    Converting
  • Framework into TestNG and configuring TestNG xml file
  • Integrating log4j logging API into framework
  • Fixing the framework issues
  • Screenshots on failure-TestNG Listeners
  • Extent HTML reports on Test Execution
  • Understand JDBC (Java Database Connectivity) and its integration with Selenium for database testing, enabling interaction with databases to validate data integrity during test execution.
  • Executing conditional statements
  • JDBC Drivers
  • Java.sql package
  • Statement Interface
  • Connection Interface
  • Firing select, insert, update and delete
  • ResultSet Interface
  • Queries with database using Java JDBC
  • Looping the ResultSet
  • Prepared Statement and Callable Statement
  • Executing conditional statements
  • Using Annotations of Junit/TestNg to establish connection with database when
  • Using Selenium
  • Installing MySQL Database and making some tables in it
  • Explore SVN (Subversion) as a version control system for managing project source code, collaborating with team members, and maintaining code history in Selenium automation projects.
  • Checkin and Checkout code with eclipse
  • Checkin and Checkout with UI
  • Installing SVN eclispe plugin – Subeclipse
  • Revisions in repository
  • Installing SVN client UI – TortoiseSVN
  • How will SVN be useful to team?
  • What is SVN?
  • SVN centralized repository
  • Implement behavior-driven development (BDD) with Cucumber to write feature files in plain text, automate acceptance tests, and foster collaboration between business stakeholders and developers.
  • Cucumber Framework design plan
  • Templete in writing Business requirements
  • Templete in writing Testcases for Business Scenarios
  • Advantages of BDD, why is it getting popular
  • Cucumber project templete
  • Understanding cucumber dependencies
  • Understanding Cucumber framework terminologies
  • Adding cucumber knowledge to Existing framework
  • Adding page objects and handle dynamic popups in home page
  • Parameterizing Selenium tests with cucumber
  • Integrate Cucumber with TestNG and Maven
  • Integrate Jenkins with Git and GitHub repositories for version control, enabling automated build triggering, continuous integration, and seamless collaboration in Selenium automation projects.
  • Configuring/Scheduling remote Git maven project in Jenkins
  • Jenkins Integration
  • Creating branch/forks
  • Cloning projects
  • Uploading project to GIT using GIT Bash
  • Git Bash commands and operations
  • Configuring ssh host keys for GIT and Jenkins
  • Installing GIT and GITHUB plug-in for jenkins
  • Downloading and installing GIT
  • What is continuous integration?
  • How Jenkins helps in continuous integration
  • Mailing if build fails
  • Configuring/Scheduling Maven Project in Jenkins
  • Build Triggers
  • Executing simple batch commands
  • GIT, GITHUB

Have Any Question?

Explore our range of industry-leading courses today and take the first step towards success!