Skip to main content
CF

Automated Software Testing with WebdriverIO

9h 47m 21s
English
Paid

Learn web automation and testing using next generation selenium framework called WebdriverIO. This course is designed to be as practical as possible. We will be coding straight from the start! All you need to do is install NodeJS and your favorite code editor and have a little bit of programming knowledge ideally in Javascript.

What will you learn in this course?

  • How to install, create and setup multiple testing projects

  • Web Automation and Elements Interaction with WebdriverIO API

  • How to implement page objects design pattern which is very popular in test automation field

  • Implement Automation Framework with Typescript

  • Behavior Driver Development using popular  combination of WebdriverIO + CodeceptJS

  • Behavior Driver Development using WebdriverIO + Cucumber

  • Visual regression testing using Percy library

  • Continuous integration using Jenkins and how to setup testing pipeline

  • Cloud testing using BrowserStack

  • Tips and tricks from the experts in the automation field

About the Author: Udemy

Udemy thumbnail

Udemy is the largest open marketplace for online courses on the internet. Founded in 2010 by Eren Bali, Oktay Caglar, and Gagan Biyani and headquartered in San Francisco, the company went public on the Nasdaq in 2021 under the ticker UDMY. The platform hosts well over two hundred thousand courses across software development, IT and cloud, data science, design, business, marketing, and creative skills, taught by tens of thousands of independent instructors. Roughly seventy million learners use it worldwide, and the corporate arm — Udemy Business — supplies a curated subset of that catalog to enterprise customers.

Because Udemy is a marketplace rather than a single editorial publisher, the catalog is uneven by design. The strongest material lives in the long-form, project-based courses authored by working engineers — full-stack JavaScript, React, Node.js, Python data science, AWS, Docker and Kubernetes, mobile development with Flutter and React Native, and cloud certification preparation. The CourseFlix listing under this source is the slice of that catalog that has been mirrored here for offline-friendly viewing, organized by topic and updated as new releases land. Pricing on Udemy itself swings dramatically with the site's near-permanent sales, which is why the platform is best treated as a deep reference catalog: pick instructors with strong reviews and a track record of updating their material rather than buying on the headline price alone.

Watch Online 110 lessons

This is a demo lesson (10:00 remaining)

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

View Pricing
0:00
/
#1: Introduction
All Course Lessons (110)
#Lesson TitleDurationAccess
1
Introduction Demo
02:08
2
Why WebdriverIO ?
01:19
3
Project Setup
04:04
4
WDIO Overview
02:37
5
Setup Commands Autocomplete
01:20
6
Prettier Formatting Setup
02:30
7
Quick Demo
05:35
8
Load Website
04:07
9
Pause the Test
05:47
10
Assert Page Title & URL
08:43
11
Failed Assertions Example
03:30
12
Assert Web Elements
04:31
13
Selectors
02:45
14
Automate Forms & Inputs
11:01
15
Automate Select & Check boxes
06:54
16
Set Browser Window Size
04:29
17
Dynamic Waiting
04:41
18
Devices Emulation
06:01
19
Screenshots
05:41
20
Section Introduction
01:06
21
File Upload
08:39
22
Before & After Hooks - Part 1
05:15
23
Before & After Hooks - Part 2
02:57
24
Custom Commands - Part 1
08:36
25
Custom Commands - Part 2
05:06
26
Custom Commands - Part 3
06:27
27
Custom Commands - Part 4
04:33
28
Overwrite Native Commands
06:09
29
Reload Session
05:06
30
Create New & Switch Browser Windows
04:55
31
Network Throttling
05:41
32
Execute Javascript Code - Sync
03:01
33
Execute Javascript Code - Async
05:20
34
Section Introduction
01:53
35
E2E Tests - Login Flow
14:15
36
E2E Tests - Forgotten Password
09:16
37
E2E Tests - Search
08:41
38
E2E Tests - Send Feedback Form
12:31
39
E2E Tests - Product Order Part 1
13:16
40
E2E Tests - Product Order Part 2
15:17
41
E2E Tests Recapitulation
01:26
42
Intro to Page Objects Model
05:50
43
Project & Typescript Setup
07:01
44
Hands On Page Objects - Part 1
11:51
45
Hands On Page Objects - Part 2
07:03
46
Hands On Page Objects - Part 3
07:31
47
Hands On Page Objects - Part 4
11:31
48
Hands On Page Objects - Part 5
06:21
49
Inheritance & Abstract Page
06:34
50
Driver Helpers
05:10
51
Data Helpers
05:12
52
Cucumber Framework Overview
01:05
53
Cucumber Project Setup
04:56
54
Node Version Check
01:39
55
Autocomplete Setup
01:40
56
Cucumber with Page Objects - Part 1
05:23
57
Cucumber with Page Objects - Part 2
06:36
58
Features
06:01
59
Step Definitions
08:11
60
Framework Improvements
02:31
61
BDD E2E Tests - Search
12:03
62
BDD E2E Tests - Feedback Form
13:06
63
Project Setup
02:19
64
Install Packages
02:17
65
Codecept Init
02:21
66
Start Selenium Server
02:49
67
First End-to-End Test
06:03
68
Headless vs Headfull
02:44
69
Smart Waiting
03:22
70
Assertions & Screenshots on Fail
04:50
71
Multiple Test Files & Scenarios
04:12
72
CodeceptJS Run Command & Reporting
04:23
73
Page Objects Pattern
06:32
74
Where to go next?
00:46
75
What is PercyIO ?
02:15
76
What is CI / CD
02:13
77
Jenkins vs Circle vs Travis
05:35
78
Setup a Jenkins Build
07:28
79
Parameterized Jenkins Build
04:40
80
Jenkins Overview
03:05
81
Bonus: Jenkins Server Script
03:06
82
Connect tests to Browserstack
03:33
83
What is HTML?
03:06
84
Headings & Paragraphs
03:50
85
Links
03:29
86
Images
03:52
87
Formatting Elements
03:23
88
Comments
02:06
89
Tables
03:11
90
Lists
03:16
91
Forms
04:48
92
Class, ID, data-test attributes
06:23
93
Buttons
04:17
94
Symbols
02:55
95
Dynamic Content
04:46
96
Head & Meta tags
04:36
97
Javascript tech-stack overview
12:47
98
Javascript tech-stack overview 2
12:47
99
Var, Let & Const
03:55
100
Console log, info, warn, error
03:34
101
Functions & Arrow Functions
06:08
102
Arrays
04:08
103
Dates & Time
03:35
104
Classes
05:15
105
Inspect Website
04:40
106
Describe, Test, It, Expect
07:02
107
Describe, Test, It, Expect 2
07:02
108
Async / Await
06:11
109
Async / Await 2
06:11
110
Get Help
01:11
Unlock unlimited learning

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

Learn more about subscription

Related courses

Frequently asked questions

What prerequisites are needed before starting this course?
Before enrolling in the course, you should have some programming knowledge, ideally in JavaScript. Additionally, you need to have NodeJS installed on your machine along with a code editor of your choice. These prerequisites are essential to follow along with the practical exercises and coding sessions from the start.
What types of projects or exercises will I work on during the course?
Throughout the course, you will work on various practical exercises including automating web forms and inputs, file uploads, and end-to-end tests like login flows, forgotten password processes, and product orders. You'll also develop skills in setting up a project using the Page Objects Model and integrating it with the Cucumber framework.
Is this course suitable for complete beginners in programming?
This course might not be ideal for complete beginners, as it requires some existing programming knowledge, specifically in JavaScript. It is designed to be practical and fast-paced, focusing on coding from the start, so familiarity with basic programming concepts is necessary to keep up with the lessons.
How does this course compare in depth and scope to other software testing courses?
This course focuses specifically on using WebdriverIO, a next-generation Selenium framework, for web automation and testing. It provides a practical approach with coding exercises, covering aspects like dynamic waiting, device emulation, and end-to-end testing. However, it does not cover manual testing techniques or non-JavaScript frameworks, which might be included in broader software testing courses.
What specific tools and platforms will I learn to use in this course?
In the course, you will learn to use WebdriverIO for automation and testing, integrate Prettier for formatting, and set up TypeScript for project enhancement. The course also covers using the Cucumber framework with Page Objects and executing JavaScript code in both synchronous and asynchronous modes.
What topics are explicitly not covered in this course?
The course does not cover manual testing techniques or testing frameworks other than WebdriverIO. It focuses on automation and coding, so topics like test planning, test case design for non-automated tests, or using languages other than JavaScript for scripting are not included.
How can the skills learned in this course be applied to other careers or courses?
The automation and testing skills acquired in this course can be highly beneficial for careers in software development and quality assurance engineering. Understanding WebdriverIO and JavaScript automation can also serve as a foundation for learning other testing frameworks and tools, making this course a valuable stepping stone for further studies in automated software testing.