Skip to main content

WebdriverIO (v5) - Selenium Webdriver using Node.js & More!

17h 13m 59s
English
Paid

Enhance your JavaScript Automation Testing skills with the WebdriverIO v5 course, a cutting-edge testing framework for Node.js, using Selenium Webdriver and more!

Course Overview

Delve into a comprehensive course covering the following key technologies:

Core Technologies

  1. WebdriverIO Fundamentals (v4 & v5): Understand the core foundations of WebdriverIO as a JavaScript/Node.js implementation of the Selenium WebDriver API. Learn about the key differences introduced in version 5.

  2. JavaScript: Explore this versatile, object-oriented programming language used to create interactive effects within web browsers.

  3. Selenium: Automate web browsers across different platforms using this powerful suite of tools.

  4. NodeJS: Learn about this runtime environment that provides everything needed to execute JavaScript programs.

  5. Mocha: Dive into this feature-rich JavaScript test framework that simplifies asynchronous testing on Node.js and browsers.

  6. Chai: Use this assertion library alongside Mocha to verify test outputs against expected values.

  7. Advanced Reporting: Generate detailed, visually appealing reports including Allure, J-unit, and JSON reports.

  8. Jenkins: Set up a Continuous Integration and Delivery environment using this versatile tool supporting various languages and source code repositories.

Course Content

This course is a comprehensive journey from basics to advanced framework creation using WebdriverIO's modern WebDriver test framework for Node.js.

Curriculum Highlights

  1. Gain a full understanding of building advanced frameworks from scratch.

  2. Utilize JavaScript with WebdriverIO, familiar to front-end developers, for modern automation tests.

  3. Explore various technologies, including NodeJS, JavaScript, Selenium, WebdriverIO, Mocha, Chai, and more.

  4. Learn robust code design concepts like Page Object Modelling and Don't Repeat Yourself (DRY).

  5. Benefit from practical, hands-on learning with source code provided for guidance.

  6. Acquire in-demand knowledge and skills upon course completion.

Course Requirements

  • Basic programming knowledge is advantageous.
  • Familiarity with Selenium is beneficial.
  • Understanding of testing concepts, both manual and automation, is helpful.

Target Audience

  • Beginner to expert automation testers
  • Manual testers looking to transition to automation
  • Anyone interested in learning modern testing technologies
  • Individuals interested in the rapidly evolving field of testing technology

What You'll Learn

  • Master automation testing with JavaScript, WebdriverIO, Selenium, NodeJS, Chai, Mocha, Jenkins, and more.
  • Engage with a complete course guiding you from basics to expert-level framework development.
  • Receive a free 200+ page E-Book to assist with learning and revision.
  • Learn Continuous Integration and Reporting through Jenkins.
  • Understand essential programming practices like abstraction and Page Object Modelling.

About the Author: udemy

udemy thumbnail
By connecting students all over the world to the best instructors, Udemy is helping individuals reach their goals and pursue their dreams. Udemy is the leading global marketplace for teaching and learning, connecting millions of students to the skills they need to succeed. Udemy helps organizations of all kinds prepare for the ever-evolving future of work. Our curated collection of top-rated business and technical courses gives companies, governments, and nonprofits the power to develop in-house expertise and satisfy employees’ hunger for learning and development.

Watch Online 175 lessons

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 175 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Introduction
All Course Lessons (175)
#Lesson TitleDurationAccess
1
Introduction Demo
02:47
2
Example Test Execution using webdriverIO & webdriveruniveristy.com
02:55
3
Please Watch!! WebdriverIO v4 & V5 - IMPORTANT
01:03
4
Gitbash Setup for Windows
02:23
5
iTerm2 Setup for Mac
00:52
6
WebdriverIO API
01:41
7
NodeJS npm Package JSON Setup
08:15
8
Handling Dependencies
10:53
9
Selenium Standalone Setup
08:57
10
Sublime Text IDE Setup
01:33
11
Creating Our First Automation Test
07:16
12
Creating Our Second Automation Test
09:02
13
Wdio - Creation & Review
06:42
14
Wdio - Triggering Tests
04:33
15
Wdio - Contact Us & Login Portal Test
02:07
16
Wdio - Executing Our New & Improved Tests
02:35
17
Wdio - Reviewing the Wdio File
02:31
18
Mocha - Introduction
04:03
19
Mocha - Structuring & Combining Tests Part 1
07:22
20
Mocha - Structuring & Combining Tests Part 2
03:45
21
Mocha - Reviewing & Executing our New & Improved Tests
03:06
22
Simplifying Tests and Sync Mode
05:02
23
Configuring Our Tests to Use Sync Mode
05:09
24
Selenium Standalone & NPM Scripts
04:35
25
Base URL Setup
05:17
26
Handling Multiple Environments During Runtime
04:57
27
Logging During Runtime
02:25
28
Implementing Node Assertions
06:41
29
Chai - Advanced Assertions & Code Example - Part 1
08:14
30
Chai - Advanced Assertions & Code Example - Part 2
03:26
31
Chai - Adding Assertions to our Tests
05:38
32
Chai - Centralizing Assertions Using our wdio File
03:33
33
Pause Command Part 1
06:48
34
Pause Command Part 2
04:48
35
Debug Mode
07:10
36
Creating Selectors using Ranorex
07:16
37
Targeting Specific Tests
02:45
38
Skipping Specific Tests
01:16
39
getCssProperty Command
07:44
40
Mocha Hooks Part 1
07:53
41
Mocha Hooks Part 2
08:27
42
Tabs Part 1
06:04
43
Tabs Part 2
08:51
44
isExisting Part 1
07:30
45
isExisting Part 2
08:02
46
isVisible
07:26
47
hasFocus Part 1
07:52
48
hasFocus Part 2
04:19
49
isEnabled Part 1
08:37
50
isEnabled Part 2
07:44
51
isSelected Part 1
06:50
52
isSelected Part 2
05:00
53
isVisibleWithinViewport Part 1
06:33
54
isVisibleWithinViewport Part 2
07:32
55
getText, isVisible, isExisting Part 1
06:22
56
getText, isVisible, isExisting Part 2
10:05
57
getText, isVisible, isExisting Part 3
05:46
58
waitForText Part 1
06:35
59
waitForText Part 2
07:09
60
waitForExist, waitForVisible Part 1
05:40
61
waitForExist, waitForVisible Part 2
04:02
62
waitUntil
08:47
63
waitForValue
05:09
64
Using External Data (Sync Data Mode) - Part 1
07:12
65
Using External Data (Sync Data Mode) - Part 2
04:37
66
Custom Commands (addCommand) - Part 1
05:31
67
Custom Commands (addCommand) - Part 2
06:44
68
Injecting JavaScript Code (Execute Command) - Part 1
08:01
69
Injecting JavaScript Code (Execute Command) - Part 2
09:15
70
Injecting JavaScript Code (Execute Command) - Part 3
02:25
71
Page Object Model (POM) - Intro
02:10
72
Page Object Model (POM) - Phase 1 - Part 1
09:33
73
Page Object Model (POM) - Phase 1 - Part 2
09:35
74
Page Object Model (POM) - Phase 1 - Part 3
09:38
75
Page Object Model (POM) - Phase 1 - Part 4
07:21
76
Page Object Model (POM) - Phase 1 - Part 5
05:54
77
Page Object Model (POM) - Phase 2 - Part 1
01:15
78
Page Object Model (POM) - Phase 2 - Part 2
08:27
79
Page Object Model (POM) - Phase 2 - Part 3
07:24
80
Page Object Model (POM) - Phase 2 - Part 4
07:25
81
Page Object Model (POM) - Phase 2 - Part 5
08:01
82
Page Object Model (POM) - Phase 2 - Part 6
05:03
83
Page Object Model (POM) - Phase 3 - Part 1
00:44
84
Page Object Model (POM) - Phase 3 - Part 2
05:08
85
Page Object Model (POM) - Phase 3 - Part 3
06:16
86
Page Object Model (POM) - Phase 3 - Part 4
04:47
87
Page Object Model (POM) - Phase 3 - Part 5
06:37
88
Page Object Model (POM) - Phase 3 - Part 6
04:04
89
Advanced Reporting - Intro
02:18
90
Advanced Reporting - Junit Reports
05:09
91
Advanced Reporting - JSON Reports
05:55
92
Advanced Reporting - Allure Reports
09:06
93
Advanced Reporting - Allure Reports - Attaching Images - Part 1
08:16
94
Advanced Reporting - Allure Reports - Attaching Images - Part 2
05:27
95
Free Up Space - Deleting Files and Folders
04:38
96
Jenkins Introduction and Explanation
02:03
97
Jenkins Installation And Setup
07:07
98
Jenkins Installing Plugins And Setting Up NodeJS
07:48
99
Trigger our Tests using Jenkins
10:13
100
Jenkins Adding Parameters
13:46
101
Jenkins Adding Additional Logging Information
04:05
102
Jenkins Execute Our Tests when Ever We Want
05:00
103
Generating Allure Reports within Jenkins - Part 1
08:07
104
Generating Allure Reports within Jenkins - Part 2
09:43
105
Generating Allure Reports within Jenkins - Part 3
10:41
106
Generating Allure Reports within Jenkins - Part 4
08:41
107
Generating Allure Reports within Jenkins - Part 5
03:19
108
Webdriver IO v5 - Introduction
02:54
109
Preparing our Project for Webdriver IO v5
01:48
110
Webdriver IO v5 - Instructions
01:00
111
Downloading Webdriver IO v5 Packages
04:17
112
Installing New WDIO CLI
01:25
113
Creating New WDIO CLI File
03:27
114
Configuring New WDIO CLI File
07:54
115
Updating our Dependencies
06:11
116
Downloading Additional Dependencies
02:17
117
Potential Problem with the .Dot Reporter
01:44
118
Preparing the Foundations of our Framework
04:24
119
Modifying our Test to use Async Await
03:54
120
Customising our Page Object Model Commands
10:02
121
Custom Commands - waitForDisplayed
07:28
122
Adding Assertions Directly Inside our Tests
05:09
123
Triggering our New Webdriver IO v5 Tests
03:49
124
Incorporating Try Catch Blocks to our Assertions
06:22
125
Installing and setting up Visual Studio Code
01:50
126
Setting up Code Runner Extension
03:51
127
Altering Color Themes
01:27
128
Installing latest version of NodeJS
03:54
129
Package.json Setup
03:09
130
Downloading Latest WebdriverIO v5 Packages
03:38
131
Prettier Setup (Enhanced Code Formatter)
04:38
132
Wdio File Setup
04:09
133
Babel Setup
05:34
134
Selenium Server Overview
05:18
135
Creating Our First Test - Part 1/2
08:53
136
Creating Our First Test - Part 2/2
07:03
137
Altering Selenium Server Port Number
05:05
138
ChromeDriver Setup
04:41
139
Creating Advanced Selectors - Part 1/2
09:17
140
Creating Advanced Selectors - Part 2/2
09:12
141
Switching Browser Tabs
07:54
142
Closing Browser Tabs
03:36
143
Applying Chai Assertions To Our Tests
10:49
144
Creating Custom Commands Using: addCommand
07:03
145
waitForExist
06:27
146
waitForDisplayed
06:18
147
waitForEnabled
06:37
148
pause
03:31
149
execute Command
06:20
150
Handling Inputs - Part 1/2
09:17
151
Handling Inputs - Part 2/2
04:10
152
isExisting, isSelected, isDisplayed
10:42
153
Handling IFrame's The Correct Way!
09:51
154
Challenge Overview
01:49
155
Challenge Solution - Part 1/3
07:39
156
Challenge Solution - Part 2/3
09:06
157
Challenge Solution - Part 3/3
08:35
158
Config File Creation & Linking To Tests
07:46
159
Interlinking Config File With Wdio File
05:48
160
waitAndClick
06:04
161
waitAndSendkeys
04:23
162
Custom Commands & Test Integration
08:45
163
Random Email Generator - [Custom Command Creation]
06:14
164
Random String Generator - [Custom Command Creation]
07:16
165
Base Page Creation
06:52
166
Sub Page Creation - Part 1/2
05:25
167
Sub Page Creation - Part 2/2
08:01
168
Page Object Pattern & Test Connection - Part 1/3
07:53
169
Page Object Pattern & Test Connection - Part 2/3
07:29
170
Page Object Pattern & Test Connection - Part 3/3
04:31
171
Making Improvements To The Existing Framework - Part 1/2
09:52
172
Making Improvements To The Existing Framework - Part 2/2
03:32
173
Organizing Test Suite's - Part 1/2
07:21
174
Organizing Test Suite's - Part 2/2
05:55
175
Retry Flaky Tests
05:35
Unlock unlimited learning

Get instant access to all 174 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription