We may earn an affiliate commission when you visit our partners.
Course image
Udemy logo

Selenium WebDriver 4, Cucumber BDD, Java & More!

Gianni @ FutureSkillz Academy

This course has helped students become automation test engineers (check our the course reviews).

Read more

This course has helped students become automation test engineers (check our the course reviews).

This course will teach you automation testing using Selenium WebDriver 4, Java, Cucumber BDD (Latest Version: 'io.cucumber'), TestNG, Jenkins and Apache Maven to develop a real world, functioning framework for real world, enterprise environments. This is different to most courses, as we focus on frameworks that actually provide skills for the real world.

Why Learn Automation Testing?

Automation testing has been steadily grown in popularity these past few years thanks to the time/ cost savings and efficiency that it offers. Companies throughout the world have or plan to use automation testing to rapidly speed up their test capabilities. Automation test engineers are in great demand and offer an average salary of £45,000+ ( Now is a great time to learn about automation test engineering and this course has been carefully developed to slowly introduce you from the basics, all the way to building advanced frameworks.

This course introduces you to some of the most in demand automation test tools currently being used by automation testers throughout the world. I teach you from the very beginning and slowly build up to demonstrate the advance capabilities they offer. All this is taught using practical examples that I explain and you can follow. 

I have personally taught countless teams to learn about automation testing in the workplace. In fact this is part of my job. I know what works when it comes to teaching new people about automation testing and I have developed this course by keeping this in mind.

So, why should you learn cucumber BDD?

Cucumber (BDD) simplifies the requirement capturing process. Requirements can be captured, broken down and simplified effortlessly; making the captured requirements readable to anyone within the organisation and in turn providing the required details and backbone to develop accurate test cases also known as ‘Feature Files’.

  • Cucumber (BDD) simplifies the process of developing automation test scripts. Students enrolled within this course will see why.  

  • Students will learn Cucumber BDD from a beginner’s level all the way to obtaining the knowledge to develop advanced sophisticated Cucumber BDD framework(s) of their own.

  • Cucumber is one of the BDD frameworks which is in very high demand

  • Search online for many automation testing roles and you will likely see BDD, Cucumber as a mandatory requirement.  

Why choose this course? 

I have also been responsible for teaching countless students/colleagues and have refined this course so that students get the very best from my teaching material.

By completing this course; I ensure you'll have all the knowledge you need to become an automation test engineer (and some students already have. )

Students that choose to enrol will get the following:

  • A course that explains every step clearly and in detail.

  • Gain knowledge on some of the most popular and in-demand automation test tools that employers ask for in job descriptions.

  • A course that is structured in a way which will enable anyone with basic of knowledge of Java and Selenium WebDriver to create basic to advanced Cucumber tests and even develop sophisticated Cucumber framework(s) from scratch.

  • Gain knowledge to develop and schedule your tests using Jenkins (Continuous integration).

  • You will also create and run tests against real world websites.

  • Be given access to webdriveruniversity (a website that I developed) so you can practice you test automation skills using the knowledge gained form this course.

What will I learn?

The following topics are covered in this course. These topics have been specifically tailored to demonstrate and teach you the most important areas of automation testing. This is taught to you using a practical approach and you will see tests (that you have written) testing websites using your very own browser.

  • Gain a greater understating of Selenium WebDriver 4 & Java.

  • Gradually learn and understand Cucumber (BDD) from a basic level all the way to an advanced level (Latest versions of Cucumber BDD).

  • Learn the latest and most effective way to develop basic to advanced Cucumber Frameworks.

  • Learn how to architecturally design and develop Cucumber Frameworks the correct way taking into consideration concepts such as DRY (Don't Repeat Yourself), maintainability etc.

  • Incorporate best practises when developing Cucumber Frameworks.

  • What is Gherkin and how can we use it?

  • Understand what exactly is a Feature File & how to create them.

  • Understand the purpose of Step Definition Classes & how to create them.

  • Explain the purpose of Runner Classes and explain how to optimize them using Options, Hooks & Tags.

  • Explain the advantages and purpose of reports and learn how to generate Advanced Reports.

  • Learn how to attach images to reports.

  • Understand the purpose of the Background keyword and why it's a good idea to use it.

  • Demonstration of Scenario Outlines & Examples (which is very important).

  • Explain the purpose of the Page Object Model (POM) & Page Factories.

  • I will show you how to Integrate Selenium and Java into your Cucumber projects.

  • I will teach you how to simulate a wide range of different test scenarios via planned automation test scripts.

  • I explain how to find elements on website(s).

  • I will explain the purpose and then master the ability to create Dynamic Locators.

  • Learn how to stabilize your tests.

  • Learn why a BasePage is so important and why it’s vital to centralize your code.

  • I will explain how to create a customized Base Page including the creation of Bespoke Methods.

  • Learn how to Effectively handle Element Interaction (Wait for Element to be Visible, Clickable etc).

  • I'll explain to you the purpose and limitations of Thread.sleep and teach you the correct way to wait and interact with website elements.

  • I will show you how to Master Inheritance using Subpages etc.

  • I will show you DriverFactory creation and why a DriverFactory is very important.

  • I'll explain the importance of Modelling Pages of a website into Separate Containers (POM: Page Object Modelling).

  • We will go though the Java JDK and Apache Maven setup.

  • I will demonstrate to you IntelliJ IDE so that you become very familiar with it (including how to set it up).

  • I will demonstrate Maven and explain it's purpose and why this is a wonderful tool to use.

  • Explain the importance of the Maven POM File and why we use it (Including handling dependencies).

  • I will explain the M2 directory.

  • I will teach you how to simplify the update process (Dependencies) of your project.

  • We will go through some of the most popular Maven commands.

  • I will explain the Constant class (for centralisation) & learn how to create dynamic directories.

  • I'll teach you Continuous Integration using Jenkins and explain why this is very useful.

  • I will also show you some very important add-ons for Jenkins.

  • We will create some very visually appealing reports within Jenkins and attaching images to those reports.

  • How to handle Extensible Choice Parameters (Selection Dropdown lists) via Jenkins.

  • I have made sure to include course notes & code with each lecture(s) and module(s).

  • We will go through Chromedriver and Geckodriver and explain its purpose.

  • I will demonstrate how to use a specific Surefire plugin to our advantage.

  • I will teach you the purpose TestNG execution files and why these are used.

  • I will demonstrate how to effectively use TestNG Assertions.

  • I will demonstrate the Config / Properties file and explain the purpose of the config reader class.

  • Parallelization -  I will demonstrate how you can execute your tests in Parallel, how to increase / decrease the numbers of tests running in parallel etc.

  • And much more.

Enroll now

What's inside

Learning objectives

  • Students will learn cucumber bdd from a beginner’s level all the way to an advanced level using java.
  • Ability to develop small robust to large complex cucumber frameworks.
  • Gain the knowledge to become an automation test engineering / sdet.
  • Understand the importance of design patterns.
  • Gain the knowledge / ability to implement advanced concepts such as page object modelling, parallelization, jenkins (ci) integration and much more!

Syllabus

Course Introduction
Introduction
Environment - Setup
Java JDK
Read more
Apache Maven
IntelliJ & Cucumber Addon
Project - Setup
What is Apache Maven?
IntelliJ - Layout Update - [Please Read]
Project Setup
POM File & Downloading Dependencies
Browser Drivers
Maven Lifecycle Commands
Maven Compiler Plugin
Other Courses - (Coupon Codes)
Cucumber Basics
What is Cucumber? & What is Gherkin?
Feature File - Creation
Mapping Step Definitions
Important - [Please Read]
Hooks & Browser Driver - Setup
Implementing Step Definitions - Part 1/3
Implementing Step Definitions - Part 2/3
Implementing Step Definitions - Part 3/3
Cucumber Expressions – Scenario Creation
Cucumber Expressions – Mapping Step Definitions
Cucumber Expressions – Implementing Step Definitions
Runner class - Creation
Runner Class – Tags
Runner Class – Reporting
The Real World Challenge
Challenge Overview
Scenario 1 – Documenting Requirements
Scenario 1 – Mapping Step Definitions
Hooks, Tags & Driver Setup
Scenario 1 – Implementing Step Definitions
Scenario 2 – Documenting Requirements
Scenario 2 – Mapping & Implementing Step Definitions
Background & Scenario Outlines
Background Keyword
Background Keyword – In Action
Scenario Outline(s)
Scenario Outline(s) – Creation
Scenario Outline(s) – Mapping & Implementing Actions
Tags - Organising Test Suites
Advanced Concepts
Advanced Hooks
Driver Factory & Properties File - Part 1/3
Driver Factory & Properties File - Part 2/3
Driver Factory & Properties File - Part 3/3
Parallel Test Execution
Advanced Reporting & Attaching Images
Base Page & Custom Commands - Part 1/3
Base Page & Custom Commands - Part 2/3
Base Page & Custom Commands - Part 3/3
Page Object Modelling - (POM) - Part 1/6
Page Object Modelling - (POM) - Part 2/6
Page Object Modelling - (POM) - Part 3/6
Page Object Modelling - (POM) - Part 4/6
Page Object Modelling - (POM) - Part 5/6
Page Object Modelling - (POM) - Part 6/6
Constant Variables
Jenkins (CI) & More!
Jenkins - Download & Setup
Configuring Jenkins
Job Creation
Job Configuration - POM, Goals & Options
textng.xml
Surefire-Plugin
Enhanced Logs
Cucumber Reports
Attaching Exception Images to Reports
Targeting & Triggering Individual Test Suites
Parallelization
Ignore Test Suites & Individual Tests
Browser Selection
Interview Preparation
Interview Question & Answers (Examples)

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Develops Selenium, Java, Cucumber, TestNG, Jenkins, and Maven skills, which are core for numerous automation test engineering roles
Taught by Gianni @ FutureSkillz Academy, who are recognized for their work in teaching automation test engineering
Examines Selenium, Cucumber (BDD), TestNG, Jenkins (CI), and Maven, which are highly relevant to industry
Suitable for automation test engineering professionals as well as people who are transitioning to the field
Helps learners take the first steps toward becoming automation test engineers
Requires learners to take other courses before taking this course

Save this course

Save Selenium WebDriver 4, Cucumber BDD, Java & More! to your list so you can find it easily later:
Save

Reviews summary

Helpful comprehensive course

Learners say this comprehensive course helped them with projects. It offers new and useful information.

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Selenium WebDriver 4, Cucumber BDD, Java & More! with these activities:
Review Selenium and Java Basics
Review core concepts and language syntax, ensuring a strong foundation before diving into the course material.
Browse courses on Selenium
Show steps
  • Review Selenium Framework Architectural Components
  • Recall Java Syntax and Object-Oriented Programming Concepts
  • Refresh Understanding of Webdriver
Explore Advanced Cucumber Features Using Online Tutorials
Delve deeper into Cucumber by following tutorials and exploring advanced features to enhance your understanding.
Show steps
  • Search for Tutorials on Advanced Cucumber Topics
  • Follow Step-by-Step Guides and Implement Examples
  • Experiment with New Concepts and Techniques
Design a Test Plan for a Real-World Website
Develop a thorough testing strategy based on course concepts, applied to a website of your choice.
Browse courses on Test Planning
Show steps
  • Analyze the Website and Define Testing Objectives
  • Design Test Cases Using Cucumber BDD Syntax
  • Create a Test Plan Document
Four other activities
Expand to see all activities and additional details
Show all seven activities
Develop a Comprehensive Example of a Cucumber Test Script
Craft a detailed and well-commented test script, demonstrating advanced techniques and best practices covered in the course.
Show steps
  • Design a Test Scenario and Implement Feature File
  • Write Step Definitions Using Cucumber
  • Integrate Assertions and Exception Handling
Solve Cucumber BDD Practice Problems
Reinforce your understanding of Cucumber by solving challenging practice problems, honing your skills through repetition.
Show steps
  • Find Practice Problems Online or in Textbooks
  • Solve Problems Independently
  • Compare Solutions with Others
Lead a Study Group on Advanced Cucumber Techniques
Share your knowledge and lead a peer group, helping others grasp complex Cucumber techniques through collaboration.
Show steps
  • Gather a Group of Peers
  • Plan and Prepare the Study Session
  • Facilitate Discussions and Guide Learning
  • Provide Feedback and Encourage Participation
Contribute to a Cucumber BDD Open-Source Project
Enhance your skills by actively participating in an open-source project, making meaningful contributions to the Cucumber community.
Show steps
  • Identify a Cucumber BDD Project on GitHub
  • Study the Project and Identify Contribution Opportunities
  • Submit a Pull Request
  • Collaborate with Project Maintainers

Career center

Learners who complete Selenium WebDriver 4, Cucumber BDD, Java & More! will develop knowledge and skills that may be useful to these careers:
Software Quality Assurance (QA) Analyst
A Software Quality Assurance (QA) Analyst is responsible for ensuring that software products meet all of their quality requirements and meet the needs of the end user. This course is an excellent way to learn about the principles of software quality assurance and how to use Selenium WebDriver 4, Cucumber BDD, Java, and other tools to assure the quality of software products.
Software Test Engineer
A Software Test Engineer is responsible for planning and executing software tests to identify errors and ensure that a software product meets all of its requirements. This course is an excellent introduction to software testing and can help you develop the skills needed for a successful career in the field. You will learn about the principles of test engineering and how to use Selenium WebDriver 4, Cucumber BDD, Java, and other tools to test software applications.
Automation Test Engineer
An Automation Test Engineer is responsible for designing, developing, and maintaining automated software tests. This course can help you build a strong foundation in automation testing and prepare you for a successful career in this field. You will learn about the principles of automation testing and how to use Selenium WebDriver 4, Cucumber BDD, Java, and other tools to automate software tests.
Software Developer
A Software Developer is responsible for designing, developing, and maintaining software applications. This course can help you build a strong foundation in software development and prepare you for a successful career in this field. You will learn about the principles of software development and how to use Selenium WebDriver 4, Cucumber BDD, and Java to develop software applications.
Quality Assurance Engineer
A Quality Assurance Engineer is responsible for ensuring that software products meet all of their quality requirements and meet the needs of the end user. This course is an excellent way to learn about the principles of quality assurance engineering and how to use Selenium WebDriver 4, Cucumber BDD, Java, and other tools to assure the quality of software products.
Manual Tester
A Manual Tester is responsible for manually testing software products to identify errors and ensure that they meet all of their requirements. This course is an excellent introduction to software testing and can help you develop the skills needed for a successful career in the field. You will learn about the principles of manual testing and how to use Selenium WebDriver 4, Cucumber BDD, Java, and other tools to manually test software applications.
Test Analyst
A Test Analyst is responsible for analyzing software products to identify areas for improvement and ensure that they meet all of their requirements. This course is a great way to learn about the principles of test analysis and how to use Selenium WebDriver 4, Cucumber BDD, Java, and other tools to analyze software products.
Software Engineer in Test
A Software Engineer in Test is responsible for designing, developing, and maintaining software tests. This course can help you build a strong foundation in software testing and prepare you for a successful career in this field. You will learn about the principles of software testing and how to use Selenium WebDriver 4, Cucumber BDD, and Java to test software applications.
Quality Control Analyst
A Quality Control Analyst is responsible for ensuring that software products meet all of their quality requirements and meet the needs of the end user. This course is a great way to learn about the principles of quality control and how to use Selenium WebDriver 4, Cucumber BDD, Java, and other tools to assure the quality of software products.
DevOps Engineer
A DevOps Engineer is responsible for building, testing, and deploying software products. This course is a great way to learn about the principles of DevOps and how to use Selenium WebDriver 4, Cucumber BDD, Java, and other tools to build, test, and deploy software products.
Software Test Manager
A Software Test Manager is responsible for planning and managing software testing projects. This course is a great way to learn about the principles of software test management and how to use Selenium WebDriver 4, Cucumber BDD, Java, and other tools to manage software testing projects.
Technical Support Engineer
A Technical Support Engineer is responsible for providing technical support to software users. This course is a great way to learn about the principles of technical support and how to use Selenium WebDriver 4, Cucumber BDD, Java, and other tools to provide technical support to software users.
Business Analyst
A Business Analyst is responsible for analyzing business processes and identifying areas for improvement. This course is a great way to learn about the principles of business analysis and how to use Selenium WebDriver 4, Cucumber BDD, Java, and other tools to analyze business processes.
Project Manager
A Project Manager is responsible for planning, executing, and closing software projects. This course is a great way to learn about the principles of project management and how to use Selenium WebDriver 4, Cucumber BDD, Java, and other tools to manage software projects.
Data Analyst
A Data Analyst is responsible for collecting, cleaning, and analyzing data. This course is a great way to learn about the principles of data analysis and how to use Selenium WebDriver 4, Cucumber BDD, Java, and other tools to collect, clean, and analyze data.

Reading list

We've selected six books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Selenium WebDriver 4, Cucumber BDD, Java & More!.
Provides a practical guide to BDD. It covers the basics of BDD, and guides readers through the process of creating and executing BDD tests.
Provides a comprehensive overview of software testing techniques. It covers the basics of software testing, and guides readers through the process of creating and executing software tests.
Provides a practical guide to software testing. It covers the basics of software testing, and guides readers through the process of creating and executing software tests.
Provides a gentle introduction to Java for testers. It covers the basics of Java, as well as more advanced topics such as object-oriented programming and unit testing.
Provides a comprehensive guide to using Jenkins for continuous integration. It covers the basics of Jenkins, as well as more advanced topics such as plugin development and security.
Provides a gentle introduction to Java for beginners. It covers the basics of Java, as well as more advanced topics such as object-oriented programming and unit testing.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Selenium WebDriver 4, Cucumber BDD, Java & More!.
Selenium WebDriver with Java & Cucumber BDD
Most relevant
Automation framework with Selenium Java (Advanced)
Most relevant
Learn Cucumber BDD with Java -MasterClass Selenium...
Most relevant
REST API Automation:REST Assured,Serenity BDD Framework
Most relevant
Cypress -Modern Automation Testing from Scratch +...
Most relevant
Web Automation-Selenium-Ruby|E-2-E Cucumber integration...
Most relevant
Behavior-driven Development (BDD) with Cucumber and Java
Most relevant
Angular automation with Protractor + Typescript + Cucumber
Most relevant
Learn Protractor(Angular Testing) from scratch +Framework
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser