Selenium WebDriver 4, Cucumber BDD, Java & More! [NEW: 2023]
What you'll learn
- 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!
- You should have some basic knowledge of Java.
- Some basic selenium knowledge will be an advantage but not necessary.
* The course has been completely updated in December 2022 *
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+ (2021, 2022). 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!
Who this course is for:
- Anyone looking to Pursue a Career within Test Automation / SDET.
- Anyone that has an interest in automation testing and wants to gain knowledge in this area.
- Manual testers / QA engineers / QA analysts that are wanting to learn Automation Testing.
- Automation test engineers looking to refresh/ learn about latest automation trends (+Advanced Concepts).
- Anyone wanting to understand and learn the concepts of Cucumber BDD and Selenium WebDriver.
- Anyone wanting to learn the skills required to develop Advanced Cucumber (BDD) frameworks.
- Automaton Test Engineers / Software Development Engineers in Test.
My name is Gianni Bruno and my goal is to help anyone learn automation testing either to gain new skills, change careers or to progress in their current field. I am a lead automation test engineer with many years of experience.
I started as a manual tester and swiftly moved into test automation as it started gaining momentum. Since then, I have progressed from a junior automation tester, senior automaton tester, and now an automation team lead.
To date, I have taught over 50,000 students and have used my teaching experience to ensure my students get the very most out of my courses. My courses are lean, effective and efficient. I ensure they are well structured, easy to follow and well designed from start to finish.
I have had many students message me saying how my courses have gained them new jobs and promotions. This is what I strive for!
I welcome you to check out my courses and if you do decide to enroll, then I hope you enjoy my content and learn many new things.
All the best,