Library

Course: Selenium Webdriver with Cucumber BDD Automation Framework

Selenium Webdriver with Cucumber BDD Automation Framework

  • Life Time Access
  • Certificate on Completion
  • Access on Android and iOS App
  • Self-Paced
About this Course

Phase-1 we’ll be about Introduction to the course :

  • Understanding about course & it’s needs
  • Having lessons walktrough
  • learning Selenium & It’s various Concepts

 

In Phase-2 we’ll be learning about different tools installations :

  • Setting-Up JAVA environmental variables
  • What is MAVEN? & Installation of MAVEN
  • Creating project in MAVEN
  • Installation of Eclipse & MUST DO configuration of Eclipse
  • What is POM file? & understanding the content inside POM file
  • Installation of TestNG
  • Cucumber Add-on’s, which will ease our efforts in framework building process
  • Setting up Browser Driver

 

In Phase-3 we’ll start with basic framework :

  • Gherkin language & Features file creation
  • Creation of Step definition class for respective feature file
  • Runner class creation


In Phase-4 we’ll move further into scripting :

  • Implementing code for step class
  • Improvising feature file with background keyword
  • Using tags in runner class

 

In Phase-5 we’ll learn automating various types of elements & handling exceptions :

  • Creation and execution of multiple feature files
  • Various exceptions
  • Basic reporting


In Phase-6, we’ll learn about ways of test execution : 

  • Using TestNG, Batch files, MVN commands
  • Installation of Maven surefire plugin

 

In Phase-7, we’ll start designing advance framework : 

  • Creating various packages, classes & using Hooks
  • Running test on different browsers
  • Centralizing selenium methods
  • Overview on ‘Page Object Pattern’ | ‘Page Factory pattern’
  • Better ways to overcome Page Object Modeling complications


In Phase-8, we’ll continue designing advance framework :

  • Updating existing packages, classes & using tags
  • Installation of Log4j & use of log generation within scripts
  • Image attachments in framework


In Phase-9, we’ll learn about CI – Jenkins :

  • Installation & setup of jenkins
  • Integration of Java, Maven with jenkins
  • Scheduling test execution from jenkins
  • Advance reporting
Basic knowledge

Learn Selenium Webdriver with a BDD framework using:

  • Cucumber
  • Maven
  • TestNG
  • Jenkins
  • Core JAVA
What you will learn
  1. Concepts you will learn & understand will be : 1. Maven 2. TestNG 3. Advance Reporting 4. Feature files 5. Scripting 6. Locate Element Techniques 7. Cross-browser Testing 8. Log Generation 9. Jenkins and many more
  2. You will have the knowledge of designing selenium framework. As per your work domain this course will help you implement selenium framework for your project.
  3. Post course completion you will be awarded with certificate.
Curriculum
Number of Lectures: 42
Total Duration: 08:54:11
Introduction & Need of Automation Testing
  • Need And Introduction to Automation Testing  

    In this video, we'll learn about below:

    1. Resolution that needs to be updated for #2019
    2. Review #2018 WQR Report
    3. Current challenges in Automation Industry
    4. Issues faced by Users
    5. Users who should pursue this course?
    6. User's Take Away


  • RoadMap  

    Welcome to Testing Advices!


    In this video we’ll see,

    1. Necessary points to be considered

    2. Course Walkthrough

    3. 8 points that differ this course from others

  • Selenium & It’s Components  

    What is Selenium?

    • Selenium is an open source automation testing tool used for web-based application.
    • Platform supported by Selenium – Windows, Os X, Linux, Solaris.
    • Languages used with selenium – JAVA, C#, Ruby, Python, PHP, Perl.
    • Browser support – Firefox, Chrome, Safari, Internet Explorer


    What are Selenium Components?

    1. Selenium IDE
    2. Selenium RC (Remote Control)
    3. Selenium WebDriver
    4. Selenium Grid


    1 ) What is Selenium IDE? And Drawbacks?

    • It is a complete integrated development environment for selenium test. It is implemented as Firefox extension.
    • Scripts are recorded in selenese, a special scripting language for selenium. Selenese provides commands for performing actions in a browser (click a link, select an option).
    • It can records user actions as they are performed and then exports them as reusable script in one of many programming language that can be later executed.

    Drawbacks :

    • Only Firefox add-on is used for test case execution.
    • Does not provide iteration or conditional statement for test script.


    2) What is Selenium RC? And Drawbacks?

    • A client/ driver establishes a connection with selenium RC server. Selenium RC server launches a browser with a URL that inject Selenium-core’s JavaScript into browser loaded web-page.
    • The client-driver passes selenese command to the server. The server interprets the command and then triggers the corresponding JavaScript execution to execute the command with browser.
    • Now selenium-core instructs the browser to act on the first instructions, typically opening a page of AUT. Browser receives the webpage.

    Drawbacks :

    • As it entirely uses JavaScript to talk with browser, but browser impose very strict security rules. As JavaScript being executed to protect users from malicious scripts.
    • Native keyboard and mouse events cannot be handled in effective manner.
    • No support for Android and iOS platform.


    3) What is Selenium Webdriver & Why Webdriver?

    • No proxy-server unlike RC between code & AUT.
    • Webdriver directly talks with browser, we can overcome the limitations of JavaScript security model which have in Selenium RC.
    • Webdriver uses most appropriate way to access the browser API. (Firefox-JavaScript, IE-C++)
    • In addition, it can still runs Selenium RC interface for backward compatibility.
    • Webdriver provides support for Android & iOS platform.
    • Can handle mouse movements & native keyboard.
    • Directly talks with browser.


    4) Selenium Grid :

    • It allow to run tests in parallel, that is different test can be run at the same time on different remote machines.
    • It greatly improves time it takes to run test suite.


  • QUIZ  

    1)What are Selenium Components?

    • a) Selenium Integrated Development Environment (IDE)
    • b) Selenium Remote Control (RC)
    • c) Selenium Webdriver
    • d) Selenium Grid
    • e) All of the Above


    2) Selenium IDE Implemented on which Browser as an Extension?

    • a) Safari
    • b) Chrome
    • c) Firefox
    • d) Internet Explorer
    • e) (a) and (b)


    3) Which of the following are Drawbacks of Selenium RC?

    • a) Does not provide iteration or conditional statement for test script
    • b) Native keyboard and mouse events cannot be handled in effective manner
    • c) No support for Android and iOS platform
    • d) Directly talks with browser, does not use JavaScript to talk with browser
    • e) (B) & (C)


    4) Which of the following doesn’t support Test design (Creating test Cases)

    • a) Selenium Integrated Development Environment (IDE)
    • b) Selenium Remote Control (RC)
    • c) Selenium Webdriver
    • d) Selenium Grid


    5) Which of the following does not support Programming?

    • a) Selenium Integrated Development Environment (IDE)
    • b) Selenium Remote Control (RC)
    • c) Selenium Webdriver
    • d) Selenium Grid
    • e) (b) and (d)


INSTALLATION
  • JAVA Environmental Variables  

    In this video, we’ll setup the JAVA environmental variables.

    1. Java jdk download

    2. Java environmental setup

    3. Validating installed Java version

    ——————————————————————————————————————————————————————————–

    JAVA is a programming language & a computing platform for application development, which allow us to automate.


    3 Editions :

    1. J2SE (Standard Edition)
    2. J2EE (Enterprise Edition)
    3. J2ME (Micro Edition)


    1. J2SE :

    • Core JAVA feature will be available
    • Used to develop desktop, stand-alone (device-specific)


    2. J2EE :

    • Along with core-java, source code will be available as well
    • Deploy on one server and access that from multiple devices using browsers


    3. J2ME :

    • It is light-weight & used for android/ iOS (e.g. angular-js, liquid-js framework)
    • As this is used to build mobile app, memory needs to be taken care (declaring data-types, etc.)


  • Maven  

    In this video, we'll setup the MAVEN environmental variables.

    1. Maven download

    2. Maven environmental setup

    3. Validating installed Maven version

  • Eclipse Setup  

    In this video, we'll learn Eclipse Installation & Eclipse mandatory settings.

  • Repo And POM setup  

    In this video, we'll learn below :

    1. REPO selection

    2. .M2 folder

    3. POM.xml

  • TestNG Installation  

    In this video, we'll learn below :

    1. TestNG Installation

    2. Annotations

  • Cucumber Addons  

    In this video we'll install various necessary addon's that will require in the course!

  • Browser Install  

    In this video we’ll learn installation of below browser & it’s respective drivers :

    1. Google Chrome

    2. Mozilla Firefox

    3. Internet Explorer

  • Assignment - Installation  

    In section 2 we have learned about the necessary Installation. 


    Purpose of this assignment is to be better in initial Installation steps. You can further create a doc & as per assignment Instructions document Imp steps & refer, which will help test the knowledge & understanding of the section.

BASE FRAMEWORK
  • Feature File  

    In this video, we'll design feature file for login scenario :

    1. Feature file creation

    2. Gherkin language

    3. Code snippet generation

  • Step Defination  

    In this video, we'll design code layout for login scenario.

  • Main Runner  

    In this video, we'll learn below :

    1. Various tags and it's values

    2. Basic Reporting

CODE IMPLEMENTATION
  • Login Code Implementation (Part 1)  

    In this video, we'll learn below for successful login scenario :

    1. Locating various elements

    2. Before & After Hook

    3. try-catch block

    4. Scripting

  • Login Code Implementation (Part 2)  

    In this video, we’ll learn below for invalid login scenario :

    1. Locating various elements

    2. Before & After Hook

    3. Try-catch block

    4. Scripting

  • Background Keyword  

    In this video we'll learn below :

    1. Use of background keyword in feature file

    2. Minimizing the methods in step class

  • Tags in Mainrunner class  

    In this video, we'll learn below :

    1. Challenges with different eclipse versions

    2. Steps to resolve eclipse compatibility Issues

    3. Importing Maven project

    4. Using tags to execute feature files

LOCATE ELEMENT TECHNIQUES & EXCEPTION HANDLING
  • Locating Table Elements And Handling Exception (Part 1)  

    In this video we'll learn below automating datepicker scenario :

    1. Dealing with table elements

    2. Understanding & Handling exception

  • CssSelector Technique for Datepicker And Handling Exception (Part 2)  

    In this video we'll continue automating datepicker scenario with below leanings :

    1. Dealing with table elements

    2. Understanding & Handling exception

  • Drag And Drop using Action Class  

    In this video we'll learn below :

    1. Introduction on iFrame

    2. Locate element using action class

    3. Write code for mouse interactions

  • Automating Hidden Objects And Handling Exception  

    In this video we'll learn below :

    1. Automating hidden objects

    2. Understanding & Handling exception

  • Automating Mouse Actions using Action Class  

    In this video we'll learn below :

    1. Automating mouse interactions

    2. Using functions for keyboard interactions

  • Handling multiple windows (Part 1)  

    In this video we'll learn below :

    1. Automating list of elements by designing customized xpath

    2. Dealing with multiple windows

    3. Handling exception

  • Handling multiple windows (Part 2)  

    In this video we'll continue learning below :

    1. Automating list of elements by designing customized xpath

    2. Dealing with multiple windows

    3. Handling exception

TEST EXECUTION STRATEGY
  • Base Framework Topics Covered  

    In this video we'll revise the below modules :

    1. Locate elements techniques

    2. Automating various types of element

    3. Different types of exceptions handling

  • Running Test using TestNG  

    In this video we'll learn execution of test cases using TestNG with below :

    1. TestNG Installation

    2. Maven generated source to identify build Issues

    3. Execution of test using TestNG suite

    4. Executing multiple runner class

  • Running Test using CMD  

    In this video we'll learn execution of test cases using CMD with below :

    1. Installation of maven surefire plugin

    2. MVN commands to execute test cases

    3. Analyzing test results

  • Running Test using Eclipse MVN Commands  

    In this video we'll learn identifying issues related to plugins, dependencies & build with below commands :

    1. MVN Test

    2. MVN Clean

    3. MVN Compile

    4. MVN Install

ADVANCE FRAMEWORK (PART 1)
  • Implementation of Constant Class  

    In this video we'll create constant class to store below :

    1. All 3 browser location within framework

    2. Selection of desired browser

    3. Defining final data types

  • Running Test on ‘Chrome’, ‘Firefox’, ‘IE’ Browsers  

    In this video we'll execute test cases using below browsers :

    1. Google Chrome

    2. Mozila Firefox

    3. Internet Explorer

  • Implementation of WebdriverActions Class (Part 1)  

    In this video we'll further modify framework :

    1. Create a class to centralize selenium functions

    2. Execute test cases in Firefox browser

    3. Debug firefox, ie issue & execute the script

  • Implementation of WebdriverActions Class (Part 2)  

    In this video we'll further modify framework :

    1. Create a class to centralize selenium functions

    2. Execute test cases in chrome browser

    3. Scripting for Invalid login scenario

  • Page Object Modeling  

    In this video we'll learn below :

    1. To create a separate class to store path of locate elements

    2. Integration of separate methods, store variables, browser & step defination

    3. Revise the current phase learnings

ADVANCE FRAMEWORK (PART 2)
  • Running Multiple Test Cases And Debug Mode  

    In this video, we'll learn below :

    1. Executing multiple feature files with multiple tags

    2. Executing multiple feature files with single tags

    3. Inserting debug points & executing script in debug mode

  • Image capturing for Failed Steps  

    In this video, we'll learn below & will revise the learnings for the current phase :

    1. Taking screenshot for failed scenario

    2. Storing the captured screenshot in separate folder within framework

  • Installation And Execution of Log4j  

    In this video we'll learn below :

    1. Installation of log4j & required dependencies

    2. Types of log & it's respective use

    3. Reading the logs in reports

CONTINUOUS INTEGRATION
  • Jenkins Installation  

    In this video we'll learn below :

    1. Jenkins war file

    2. Command to execute jenkins war file

    3. Installation of Jenkins

  • Jenkins required Add-on’s  

    In this video we'll install various required plugins for jenkins, selenium, reporting.

  • Jenkins Integration with JAVA And Maven  

    In this video, we'll learn below :

    1. Creating a maven project in jenkins

    2. Performing project setup

    3. Integrating maven & java with jenkins

  • Jenkins Implementation  

    In this video, we'll learn below :

    1. Execution of test cases from jenkins

    2. Advance reporting

    3. Scheduling the test from jenkins

Reviews (3)
1 month before
By far the best course for Selenium. It delivers what is been posted by Instructor - Shashank. A complete framework knowledge & yet simple demonstration really helps understand the course. It not only focuses on learning selenium but what it also focuses on challenges we could stuck too & how to solve those. Overall a great course hence 5 ratings...
1 month before
Thanks to this excellent course. Organized from beginner to advanced level and very well explained. Instructor has great teaching techniques and explains everything with a scenario so you could easily understand. What stands out most is course is breakdown well and teaches you step by step. Instructor is really helpful answering the technical as well as some time on skype. It is your go to course guys if you really want to build a successful career in selenium. I will recommend this 100%
1 month before
The course is really good. Thanks Shashank Sir, I like the way you explain all the concepts, even the small things, so simple and also describing each and every concept. I really gained the confidence by watching this course. Thank you so much Sir. Must try course I would say!