Skip to main content
CF

Selenium Webdriver Complete Course - Build A Framework

42h 27m 57s
English
Paid

Are you struggling with Selenium WebDriver testing? Do your tests often break without reason? Can you efficiently run 500 tests a day with one click? If these challenges sound familiar, you're not alone. Many have faced similar frustrations trying to master Selenium WebDriver automation.

Why You Need This Course

Here's the reality: Building a framework is essential! Without guidance, mastering test automation frameworks can be daunting. This is why the Complete Selenium WebDriver with C# Course was carefully designed by industry professionals. Transform from a complete beginner to a proficient Automation Test Engineer in no time. Gain the skills needed to write Selenium WebDriver tests effortlessly, with lasting effectiveness.

Course Highlights

Each session is packed with high-quality video tutorials, offering practical exercises using real-world applications to enhance learning retention. Prepare to revolutionize your test automation skills with these key topics:

What Will You Learn?

  • Introduction to Automation Testing: Grasp the essence of automated testing, beyond specific tools.
  • Understanding Selenium WebDriver: Learn its significance and application.
  • Tool Installation: Set up essential tools accurately for seamless learning.
  • Element Identification: Develop critical skills to pinpoint web elements efficiently.
  • Mouse and Keyboard Interactions: Master functions like drag and drop for versatile automation.
  • Handling Waits: Differentiate between implicit and explicit waits and apply them effectively.

Automation Best Practices

Tackle stability issues by mastering fundamental principles like:

  • Single Responsibility Principle
  • Don't Repeat Yourself
  • Page Object Pattern
  • Acceptance Test Driven Automation

Framework Projects

You will work on two distinct web applications:

  • Automation Framework Evolution: Learn to maintain robust code against changes over time.
  • Framework Organization: Build strong architectural and organizational test frameworks.

Advanced Features

  • Logging and Reporting: Enhance your framework with plug-and-play features to create detailed HTML reports and logs.
  • C# Mastery: This course uniquely caters to test automation engineers, focusing solely on essential C# skills.
  • Latest Tools: Stay up-to-date with Selenium WebDriver 3.0+ and the newest testing frameworks.

Exclusive Bonus

  • Complete Sauce Labs Course: Dive into advanced cross-browser and parallel test automation techniques, crucial for modern testing roles.

Course Requirements

To take full advantage of this course, ensure you have:

  • A PC with Windows 10 Professional or a Mac OS

Who Should Enroll?

  • Individuals unfamiliar with framework creation
  • Manual testers seeking career advancement
  • Those interested in Quality Assurance and Automation
  • Test Engineers aiming for stable test automation

Key Learning Outcomes

  • Develop a Selenium Webdriver framework using C#
  • Master essential C# programming skills
  • Execute parallel tests with NUnit
  • Proficiently use Selenium WebDriver
  • Efficiently identify web page elements
  • Create resilient automation tests that appeal to employers
  • Adopt best practices such as DRY and SRP for robust testing
  • Apply Page Object Patterns for superior test design
  • Insight into what to automate and timing
  • Generate HTML reports and log files for effective debugging

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 507 lessons

This is a demo lesson (10:00 remaining)

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

View Pricing
0:00
/
#1: Course Overview
All Course Lessons (507)
#Lesson TitleDurationAccess
1
Course Overview Demo
02:27
2
Prerequisites and FAQs
04:31
3
Syllabus for Selenium section
02:53
4
Help, I have a Selenium Error
07:59
5
Intro to Dr Tiffany and Visual Studio installation
06:05
6
How to update VS Community subscription after expiration
01:34
7
MacOS Only: Visual Studio options for Mac
10:06
8
MacOS Only: How to use Parallels for Mac
02:40
9
How to download the code
04:24
10
Creating your first project
04:48
11
Important menus in Visual Studio
05:05
12
Solution overview
04:11
13
Solution architecture
05:19
14
Coding conventions
05:17
15
End of section quiz
04:14
16
About the quizzes
02:30
17
Class library project
04:24
18
Unit test project
02:48
19
Debugging basics
05:02
20
Common shortcuts in Visual Studio
04:49
21
End of section quiz
03:53
22
Intro to variables
05:31
23
Declaring variables of simple types
06:03
24
Formatting text using concatenation
05:11
25
Using string interpolation
04:11
26
Formatting text for output
05:23
27
Verbatim strings and escape sequences
04:27
28
End of section quiz
03:31
29
Section intro
01:27
30
TestMethod TestClass Description
08:51
31
Assertions
06:27
32
ExpectedException attribute
01:55
33
Quiz on assertions and attributes
01:13
34
Quiz answer
02:28
35
TestInitialize
09:25
36
Quiz on before and after hooks
04:24
37
TestContext
10:04
38
Math with integers
05:38
39
Math with floating point numbers
05:00
40
Math with decimals
04:25
41
Coding quiz
05:27
42
Equality and relationship operators
05:08
43
If statements
05:48
44
If else statements
05:44
45
Section exam
06:57
46
Introduction to classes and objects
04:51
47
Writing a class
04:33
48
Get and set accessors
06:28
49
Writing constructors
05:28
50
Methods in classes
03:01
51
Instantiating a class object
04:38
52
Section quiz
06:04
53
The string class
05:11
54
Value vs reference types
03:38
55
Car class example
04:57
56
Employee class example
06:13
57
Scope of declarations
05:28
58
ToString method
05:45
59
End of section exam specifications
02:04
60
Exam trip class solution
04:58
61
Trip class test methods
04:31
62
Midterm exam specifications
03:58
63
Midterm project solution
06:05
64
While loops
04:17
65
Increment-decrement operators
03:29
66
Counter and sentinel controlled repetition
05:59
67
Nested loops
04:31
68
Coding quiz
04:56
69
For loops
06:01
70
Do while loops
05:13
71
Switch statement
05:29
72
Break statement
04:40
73
Continue statement
04:52
74
End of section exam instructions
02:25
75
End of section exam solution
05:27
76
Method call stack
05:17
77
Static methods
05:33
78
Method overloading
06:17
79
Method overriding
03:47
80
Coding quiz
05:59
81
Optional and named parameters
07:09
82
Out and ref keywords
06:05
83
Tuples
03:52
84
End of section exam specifications
03:09
85
End of section exam solution
06:42
86
Declaring and creating arrays
05:02
87
The ForEach loop
05:29
88
Passing arrays to methods
03:57
89
Passing array elements to methods
02:53
90
The array class
03:23
91
Coding quiz part 1
06:26
92
Coding quiz part 2
07:30
93
Arrays vs collections
03:53
94
List collection
05:51
95
List example
03:40
96
End of section exam
06:03
97
Programming with inheritance
04:38
98
Inheritance example p1
05:18
99
Inheritance example p2
04:48
100
Abstract classes
03:51
101
Abstract methods
05:34
102
Composition
05:09
103
Protected keyword
05:30
104
Coding quiz instructions
03:30
105
Coding quiz solution
06:31
106
Introduction to polymorphism
03:03
107
Polymorphism example
05:44
108
Virtual keyword
03:07
109
Sealed classes and methods
04:52
110
End of section exam specifications
04:06
111
End of section exam solution
06:51
112
Intro to interfaces
06:14
113
Selenium interfaces
05:55
114
Implementing interfaces
05:36
115
Using polymorphism with interfaces
05:27
116
End of section exam
04:16
117
Intro to exception handling
04:29
118
Try catch block
04:24
119
The finally block
02:42
120
Throw keyword
05:53
121
Coding quiz
04:02
122
Exception handling best practices
04:03
123
User defined exceptions
04:01
124
End of section exam
03:33
125
Casting
05:58
126
Delegates
06:03
127
Lambda expressions
05:33
128
Regular expressions
08:09
129
Coding quiz
07:31
130
Housing application exam
06:41
131
Housing application exam answer 1
05:04
132
Housing application exam answer 2
06:06
133
Final exam on inheritance
04:22
134
Final exam on inheritance solution
06:30
135
Introduction to automation best practices
01:22
136
Test automation pyramid is key to success
09:41
137
Focus on reliablity before more automation
04:26
138
Don't rerun failed tests
02:42
139
Always use Page Objects
06:05
140
Correct synchronization strategy
07:17
141
Don't repeat yourself
04:47
142
Keep classes and methods small
08:05
143
Conclusions
03:20
144
Introduction to selenium webdriver
00:52
145
What are the benefits of using Selenium Webdriver
04:54
146
What are the negatives of using Selenium Webdriver
03:04
147
How does Selenium help us get the perfect framework
02:34
148
Conclusions regarding this section
01:57
149
Section syllabus
03:45
150
How to keep the software at the latest versions
07:21
151
How to download and install Selenium WebDriver
05:05
152
How to download ChromeDriver
03:02
153
How to get ChromeDriver path dynamically
06:13
154
How to download Github projects and open them
04:17
155
How to import using statements
06:42
156
IWebDriver interface
04:37
157
Element ID section overview
01:32
158
Introduction to Element Identification
02:54
159
How to use Chrome for element location
05:04
160
How to get absolute XPath and CSS
04:32
161
Basic understanding of HTML
03:51
162
HTML in the browser
03:16
163
Selenium WebDriver location strategies
07:28
164
Highlighting all web elements using Selenium
04:17
165
FindElement and FindElements methods
03:32
166
Quiz on element identification
00:55
167
Quiz answer on element identification
08:38
168
Which locators are best to use
07:19
169
How to evaluate elements at run time
07:38
170
Introduction to XPath
02:51
171
Forward slash and double forward slash in XPath
05:11
172
Asterisk and @ in XPath
03:45
173
More about @ and .
03:01
174
XPath contains() function
02:44
175
XPath parent and compound class names
03:23
176
How to use multiple attributes in XPath
02:09
177
XPath exam
05:45
178
XPath exam answers
09:33
179
Navigation with Selenium WebDriver
02:04
180
Navigation quiz
02:50
181
Navigation quiz answer
03:50
182
Element manipulation with WebDriver
04:40
183
How to fill out a form
05:50
184
Quiz on element manipulation
01:49
185
Answer to manipulation quiz
09:43
186
CurrentWindowHandle, WindowHandes, PageSource, Title
05:38
187
WebDriver URL
00:57
188
Interrogating IWebElements
03:54
189
Learning all IWebElement properties
05:57
190
Element interrogation quiz
03:11
191
Element interrogation quiz answer
04:07
192
Conclusions
03:21
193
Section syllabus
02:19
194
Resources
01:06
195
Why did this test fail
04:19
196
Answer to why the test is flaky
02:45
197
What is an implicit wait in selenium
04:16
198
2nd example of an implicit wait
04:29
199
How to make implicit wait work
03:32
200
Quiz on implicit waits
05:16
201
Answer to quiz on implicit waits
02:00
202
What's next
01:21
203
What are explicit waits
03:01
204
2 types of explicit waits
03:48
205
WebDriverWait
04:17
206
ExpectedConditions
04:45
207
Customizing the WebDriverWait
07:24
208
What is the future of ExpectedConditions
11:56
209
Proper synchronization quiz
05:39
210
Synchronization quiz answer
07:38
211
What topics will be covered
01:18
212
What are user interactions in Selenium Webdriver
02:12
213
What are the different kind of user interactions
02:27
214
Don't use Firefox please
02:34
215
How to create an Actions class in Webdriver
03:21
216
Analyzing our application under test
03:43
217
Writing the drag and drop test
04:42
218
Finishing the first drag and drop test
03:16
219
Executing the first drag and drop test
03:33
220
Starting to write the 2nd drag and drop example
03:48
221
Writing a 2nd drag and drop example
02:58
222
Running a 2nd drag and drop example
02:05
223
Drag and drop quiz question
01:07
224
Drag and drop quiz answer
03:39
225
How to do a resize action with selenium webdriver
04:36
226
How to open developer tools with selenium webdriver
05:28
227
Running a test that opens a network tab in firefox
02:00
228
Drag and drop with html 5 quiz question
00:58
229
Drag and drop with html 5 answer part 1
04:32
230
Drag and drop with html 5 answer part 2
02:48
231
How to draw on a canvas with selenium quiz
00:33
232
How to draw on a canvas with selenium quiz answer
04:07
233
Conclusions
03:38
234
Overview of the rest of the course
02:04
235
Section intro and solution overview
03:17
236
Problems with record and replay
08:31
237
Problems with keyword driven testing
07:20
238
What does the code actually test?
00:58
239
Introduction to the Page Object Pattern
01:56
240
Advantages and Disadvantages of the Page Object Pattern
04:24
241
What is the DRY Principle
03:58
242
Quiz on coding page objects
01:41
243
How to start web application and run automation
06:25
244
Page Object anti-patterns
03:38
245
Automation quiz
02:26
246
Why did you struggle?
03:18
247
Examples of bad automation tests
06:03
248
Introduction to TDD
04:55
249
Check execution environment
04:34
250
Red and green phase
03:50
251
Opening complicated page
07:51
252
Finish green phase
02:43
253
Refactor
01:51
254
Red
01:44
255
Locating amazon search bar
03:19
256
Green
04:57
257
Green 2
01:46
258
Another refactor
02:56
259
Quiz on red and green
02:00
260
Quiz answer
07:48
261
Conclusions for TDD
03:53
262
Conclusions for the last several sections
02:20
263
Getting started with Selenium framework
02:11
264
Writing the test skeleton
06:12
265
Fixing compiler errors in test
06:52
266
Quiz-How to setup ChromeDriver
01:00
267
Answer to how to setup ChromeDriver
05:23
268
Getting ChromeDriver to run
04:22
269
Making GoTo and IsVisible work
05:12
270
FillOutFormAndSubmit method
07:09
271
Making 1st test pass
05:57
272
Refactor
05:45
273
Quiz on best practices
00:56
274
Answer on best practices
02:50
275
Creating a BasePage class
04:54
276
Making functional test fail
05:39
277
Summary
05:50
278
Introduction to sprint 2
05:07
279
Adding Lastname field
04:46
280
Fixing a possible problem
04:19
281
Refactor phase
02:23
282
Adding a TestCleanup
04:52
283
Quiz-how to remove more duplication?
02:52
284
Quiz answer on duplication
04:10
285
Answer on duplication 2
03:39
286
Answer on duplication 3
03:32
287
Red phase
06:34
288
Red phase 2
05:07
289
Red phase 3
04:49
290
Importance of Refactoring
05:19
291
Importance of Refactoring 2
02:47
292
Sprint 3 Quiz
01:28
293
Adding a Gender
03:25
294
Update FillOutFormAndSubmit
04:55
295
Refactoring
03:07
296
Red and Green phase
03:58
297
Quiz on Other gender
02:04
298
Quiz answer
02:25
299
Refactoring all 3 tests
03:21
300
Refactoring out Assertsion
05:02
301
Why we dont refactor the rest
01:38
302
Sprint 4 Requirements
01:52
303
FillOutEmergencyContactForm method
07:12
304
Refactoring all tests 1
04:20
305
SetGenderForEmergencyContact refactor
04:27
306
Red and green phases of sprint 4
02:39
307
Conclusions
03:41
308
Conclusions 2
03:09
309
How to organize your test cases and classes
04:04
310
Test organization in code
02:11
311
Quiz on test case 1
01:37
312
Skeleton of test case
03:07
313
Implementing the test
09:10
314
WebDriverFactory
10:43
315
Making test pass
03:38
316
Making test fail
04:03
317
Explaining WebDriverFactory
03:43
318
Quiz 2
02:15
319
Skeleton of test
01:45
320
Implementing the test
06:54
321
Running Test 2
02:30
322
A new problem
01:27
323
Creating BaseTest
05:15
324
Problems with large page objects
05:08
325
How to keep page objects small
04:02
326
Quiz on slider
01:35
327
Quiz answer on slider
07:47
328
How to organize the solution
05:52
329
How to encapsulate page locators
04:09
330
Course syllabus and prerequisites
03:56
331
Why is logging important
02:50
332
Introduction to NLog
07:08
333
How to install NLog
04:25
334
Starting to log
04:24
335
Why Info level is important
02:54
336
Understanding NLog
05:47
337
Layout in NLog
02:22
338
fileName and keepFileOpen in NLog
02:01
339
Creating the first log records
05:33
340
More information about Info logging
05:04
341
NLog Exam
05:36
342
NLog exam answer
05:20
343
NLog bug logger
02:29
344
What to focus on
01:34
345
Why do reporting in automation
01:46
346
Overview of Extent Reports
02:22
347
Overview of how to use Extent Reports
04:08
348
Solution layout and new classes
02:55
349
The Reporter class
04:10
350
The BaseTest class
04:08
351
The ScreenshotTaker class
02:33
352
Viewing test results
03:33
353
How to use the Reporter class
05:47
354
Quiz on Reporter.cs
02:04
355
Quiz answer for Reporter.cs usage
07:34
356
Conclusions about Logging and Reporting
05:26
357
Final exam
04:43
358
HTML Report and steps
04:13
359
TCID4 Answer
04:30
360
TCID5 Answer
04:34
361
TCID6 Answer part 1
06:45
362
TCID6 Answer part 2
07:04
363
TCID7 Answer
05:21
364
Prerequisites
04:14
365
Syllabus for Introduction to Sauce Labs section
01:35
366
Advantages of Sauce Labs
11:26
367
Disadvantages of Sauce Labs
13:15
368
How to sign up for Sauce Labs trial
00:52
369
Overview of Sauce Labs dashboard
01:33
370
Manual cross-browser testing
03:56
371
Tunnels, analytics, and archive tabs
03:06
372
Overview of solution
01:31
373
RemoteWebDriver
03:55
374
DesiredCapabilities
03:54
375
How to find Sauce Labs account info
03:00
376
How to run tests
02:02
377
How to analyze tests in Sauce Labs
04:00
378
How to do live debugging in Sauce
03:38
379
Sauce Labs Timeouts
02:45
380
Quiz on Sauce Labs concepts
03:45
381
Quiz answer on Sauce concepts
02:28
382
Sauce labs advanced topics course promo video
02:35
383
Overview of new project layout
05:27
384
How to run tests in parallel
03:55
385
How to set level of parallelism
05:11
386
Layout of data driven tests
04:22
387
How to do data driven cross browser testing in sauce labs
07:28
388
How to configure mobile automation in sauce labs
02:27
389
How to set test names, status, log steps in sauce labs
11:27
390
Sauce labs test insights
03:58
391
Sauce analytics trends
04:12
392
Exam on sauce concepts
04:02
393
Exam answer on sauce concepts
05:35
394
Course overview
00:57
395
Course syllabus
01:42
396
Create Applitools account and install Nuget packages
04:16
397
Why must we automate visual testing
09:07
398
Benefits of Applitools
09:57
399
What is a baseline in Applitools
07:43
400
Code overview
05:36
401
Baseline examples
08:42
402
1st comparison
05:16
403
Zooming, resizing and layers
05:32
404
Toggling and Floating region
03:44
405
Exact match level
05:05
406
Strict match level
02:41
407
Content match level
05:51
408
Layout match level
05:22
409
Introduction to Ignore regions
03:18
410
Ignore regions in code
10:54
411
Ignoring multiple regions
02:25
412
Floating region
03:15
413
Strict region
02:51
414
Content region
02:01
415
Layout region
01:12
416
Test Manager UI
11:04
417
Batches
10:42
418
Full page screenshots with CSS stitch
12:57
419
CSS stitching vs standard scroll
08:06
420
Bugs and test steps in UI
08:11
421
Test steps code
04:57
422
Fluent API
08:41
423
How programatic regions look
04:57
424
Conclusions
06:59
425
Introduction
02:49
426
Prerequisites before proceeding
02:42
427
Positives and negatives of the POM Framework
03:46
428
Downloading the POM Framework
03:36
429
Downloading Resharper
02:36
430
Opening visual studio and starting a new project
02:57
431
How to install Selenium WebDriver Nuget packages
02:35
432
How to create a unit test project and add a reference
02:15
433
How to rename a test
02:42
434
proper naming conventions of tests
01:12
435
How to code the first test
02:07
436
Understanding the first test
02:37
437
understanding the first test 2
02:38
438
understanding the first test 3
03:27
439
coding the second test
03:26
440
identifying elements of the second test
03:46
441
Fail, refactor, pass
03:16
442
fixing the tests
02:48
443
how to install chrome driver
02:31
444
Refactoring - All videos
25:08
445
Understanding a problem with these tests
04:50
446
Refactoring our test based on the DRY principle
04:22
447
Refactoring our test based on the DRY principle 2
01:47
448
Comparing the 2 tests before and after refactoring
02:25
449
Considering other problems with the current test
03:16
450
Doing a second refactoring of the test
03:30
451
Running the test and analyzing it one more time
01:45
452
Automation testing Exercise
03:18
453
Introduction to the Page Object Model
03:13
454
Introduction to the Page Object Model 2
02:22
455
Benefits of the Page Object Model
03:21
456
Benefits of the Page Object Model 2
03:19
457
Words of wisdom from Albert Einstein
04:01
458
How to start removing problems and creating a TestBase class
02:16
459
How to code an Initialize method for the TestBase class
02:20
460
How to create a static driver and the Initialize method
04:00
461
Moving the Browser class to its own file and cleaning up
02:22
462
Cleaning up the new test to inherit from TestBase
04:20
463
Comparing the new test with the older test
02:46
464
How to create a test cleanup method
02:33
465
Hermetic Test Design Pattern
04:47
466
More design patterns
02:13
467
Designing the test
03:08
468
How to create a Pages class
03:38
469
Coding the Pages class
02:33
470
Coding the Pages class 2
03:12
471
Coding the LoginPage
02:28
472
Adding a goto method to the Browser class
02:35
473
Writing the login method of the Login page
03:56
474
Running the test and checking the results
04:04
475
Creating a membership page object
02:15
476
Implementing the IsAt method
03:08
477
Rerunning the test
03:23
478
Seeing the test results of the test
01:13
479
Making sure that the test fails successfully and closing comments
03:01
480
comparing the 2 tests
05:10
481
writing the 3rd test
04:06
482
writing the 4th test
03:40
483
designing an explicit wait 3
04:19
484
designing an explicit wait 5
03:48
485
final run of the unit tests
05:08
486
Developing automation framework-all videos
53:35
487
Refactoring - all videos in one
25:08
488
Creating test automation - all videos
01:22:12
489
Analyzing the automation test-all videos
02:05:04
490
Framework-all videos
01:09:23
491
Recording automation test using selenium builder
03:18
492
Understanding the layout of the solution and the recorded test
04:39
493
Changing the remove webdriver to firefox
03:37
494
Undestandig why the test failed a 2nd time
01:46
495
Finally getting the recorded test to run
01:54
496
What are the problems with recorded functional tests
05:09
497
Conclusions regarding recorded tests
01:54
498
What can we do to fix problems with recorded functional tests?
01:27
499
Introduction to keyword driven testing
04:25
500
What can change about KDF
08:14
501
Advantages and Disadvantages of KDF tests
02:15
502
Transitioning into Page Object Pattern
01:14
503
First look at a functional test using the Page Object Model
03:29
504
Page objects look similar
01:03
505
Quiz - What about our page objects is WET
01:58
506
Quiz Answer to why our page objects are WET
01:21
507
How to add a BasePage class to our page objects
02:42
Unlock unlimited learning

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

Learn more about subscription

Course content

507 lessons · 42h 27m 57s
Show all 507 lessons
  1. 1 Course Overview 02:27
  2. 2 Prerequisites and FAQs 04:31
  3. 3 Syllabus for Selenium section 02:53
  4. 4 Help, I have a Selenium Error 07:59
  5. 5 Intro to Dr Tiffany and Visual Studio installation 06:05
  6. 6 How to update VS Community subscription after expiration 01:34
  7. 7 MacOS Only: Visual Studio options for Mac 10:06
  8. 8 MacOS Only: How to use Parallels for Mac 02:40
  9. 9 How to download the code 04:24
  10. 10 Creating your first project 04:48
  11. 11 Important menus in Visual Studio 05:05
  12. 12 Solution overview 04:11
  13. 13 Solution architecture 05:19
  14. 14 Coding conventions 05:17
  15. 15 End of section quiz 04:14
  16. 16 About the quizzes 02:30
  17. 17 Class library project 04:24
  18. 18 Unit test project 02:48
  19. 19 Debugging basics 05:02
  20. 20 Common shortcuts in Visual Studio 04:49
  21. 21 End of section quiz 03:53
  22. 22 Intro to variables 05:31
  23. 23 Declaring variables of simple types 06:03
  24. 24 Formatting text using concatenation 05:11
  25. 25 Using string interpolation 04:11
  26. 26 Formatting text for output 05:23
  27. 27 Verbatim strings and escape sequences 04:27
  28. 28 End of section quiz 03:31
  29. 29 Section intro 01:27
  30. 30 TestMethod TestClass Description 08:51
  31. 31 Assertions 06:27
  32. 32 ExpectedException attribute 01:55
  33. 33 Quiz on assertions and attributes 01:13
  34. 34 Quiz answer 02:28
  35. 35 TestInitialize 09:25
  36. 36 Quiz on before and after hooks 04:24
  37. 37 TestContext 10:04
  38. 38 Math with integers 05:38
  39. 39 Math with floating point numbers 05:00
  40. 40 Math with decimals 04:25
  41. 41 Coding quiz 05:27
  42. 42 Equality and relationship operators 05:08
  43. 43 If statements 05:48
  44. 44 If else statements 05:44
  45. 45 Section exam 06:57
  46. 46 Introduction to classes and objects 04:51
  47. 47 Writing a class 04:33
  48. 48 Get and set accessors 06:28
  49. 49 Writing constructors 05:28
  50. 50 Methods in classes 03:01
  51. 51 Instantiating a class object 04:38
  52. 52 Section quiz 06:04
  53. 53 The string class 05:11
  54. 54 Value vs reference types 03:38
  55. 55 Car class example 04:57
  56. 56 Employee class example 06:13
  57. 57 Scope of declarations 05:28
  58. 58 ToString method 05:45
  59. 59 End of section exam specifications 02:04
  60. 60 Exam trip class solution 04:58
  61. 61 Trip class test methods 04:31
  62. 62 Midterm exam specifications 03:58
  63. 63 Midterm project solution 06:05
  64. 64 While loops 04:17
  65. 65 Increment-decrement operators 03:29
  66. 66 Counter and sentinel controlled repetition 05:59
  67. 67 Nested loops 04:31
  68. 68 Coding quiz 04:56
  69. 69 For loops 06:01
  70. 70 Do while loops 05:13
  71. 71 Switch statement 05:29
  72. 72 Break statement 04:40
  73. 73 Continue statement 04:52
  74. 74 End of section exam instructions 02:25
  75. 75 End of section exam solution 05:27
  76. 76 Method call stack 05:17
  77. 77 Static methods 05:33
  78. 78 Method overloading 06:17
  79. 79 Method overriding 03:47
  80. 80 Coding quiz 05:59
  81. 81 Optional and named parameters 07:09
  82. 82 Out and ref keywords 06:05
  83. 83 Tuples 03:52
  84. 84 End of section exam specifications 03:09
  85. 85 End of section exam solution 06:42
  86. 86 Declaring and creating arrays 05:02
  87. 87 The ForEach loop 05:29
  88. 88 Passing arrays to methods 03:57
  89. 89 Passing array elements to methods 02:53
  90. 90 The array class 03:23
  91. 91 Coding quiz part 1 06:26
  92. 92 Coding quiz part 2 07:30
  93. 93 Arrays vs collections 03:53
  94. 94 List collection 05:51
  95. 95 List example 03:40
  96. 96 End of section exam 06:03
  97. 97 Programming with inheritance 04:38
  98. 98 Inheritance example p1 05:18
  99. 99 Inheritance example p2 04:48
  100. 100 Abstract classes 03:51
  101. 101 Abstract methods 05:34
  102. 102 Composition 05:09
  103. 103 Protected keyword 05:30
  104. 104 Coding quiz instructions 03:30
  105. 105 Coding quiz solution 06:31
  106. 106 Introduction to polymorphism 03:03
  107. 107 Polymorphism example 05:44
  108. 108 Virtual keyword 03:07
  109. 109 Sealed classes and methods 04:52
  110. 110 End of section exam specifications 04:06
  111. 111 End of section exam solution 06:51
  112. 112 Intro to interfaces 06:14
  113. 113 Selenium interfaces 05:55
  114. 114 Implementing interfaces 05:36
  115. 115 Using polymorphism with interfaces 05:27
  116. 116 End of section exam 04:16
  117. 117 Intro to exception handling 04:29
  118. 118 Try catch block 04:24
  119. 119 The finally block 02:42
  120. 120 Throw keyword 05:53
  121. 121 Coding quiz 04:02
  122. 122 Exception handling best practices 04:03
  123. 123 User defined exceptions 04:01
  124. 124 End of section exam 03:33
  125. 125 Casting 05:58
  126. 126 Delegates 06:03
  127. 127 Lambda expressions 05:33
  128. 128 Regular expressions 08:09
  129. 129 Coding quiz 07:31
  130. 130 Housing application exam 06:41
  131. 131 Housing application exam answer 1 05:04
  132. 132 Housing application exam answer 2 06:06
  133. 133 Final exam on inheritance 04:22
  134. 134 Final exam on inheritance solution 06:30
  135. 135 Introduction to automation best practices 01:22
  136. 136 Test automation pyramid is key to success 09:41
  137. 137 Focus on reliablity before more automation 04:26
  138. 138 Don't rerun failed tests 02:42
  139. 139 Always use Page Objects 06:05
  140. 140 Correct synchronization strategy 07:17
  141. 141 Don't repeat yourself 04:47
  142. 142 Keep classes and methods small 08:05
  143. 143 Conclusions 03:20
  144. 144 Introduction to selenium webdriver 00:52
  145. 145 What are the benefits of using Selenium Webdriver 04:54
  146. 146 What are the negatives of using Selenium Webdriver 03:04
  147. 147 How does Selenium help us get the perfect framework 02:34
  148. 148 Conclusions regarding this section 01:57
  149. 149 Section syllabus 03:45
  150. 150 How to keep the software at the latest versions 07:21
  151. 151 How to download and install Selenium WebDriver 05:05
  152. 152 How to download ChromeDriver 03:02
  153. 153 How to get ChromeDriver path dynamically 06:13
  154. 154 How to download Github projects and open them 04:17
  155. 155 How to import using statements 06:42
  156. 156 IWebDriver interface 04:37
  157. 157 Element ID section overview 01:32
  158. 158 Introduction to Element Identification 02:54
  159. 159 How to use Chrome for element location 05:04
  160. 160 How to get absolute XPath and CSS 04:32
  161. 161 Basic understanding of HTML 03:51
  162. 162 HTML in the browser 03:16
  163. 163 Selenium WebDriver location strategies 07:28
  164. 164 Highlighting all web elements using Selenium 04:17
  165. 165 FindElement and FindElements methods 03:32
  166. 166 Quiz on element identification 00:55
  167. 167 Quiz answer on element identification 08:38
  168. 168 Which locators are best to use 07:19
  169. 169 How to evaluate elements at run time 07:38
  170. 170 Introduction to XPath 02:51
  171. 171 Forward slash and double forward slash in XPath 05:11
  172. 172 Asterisk and @ in XPath 03:45
  173. 173 More about @ and . 03:01
  174. 174 XPath contains() function 02:44
  175. 175 XPath parent and compound class names 03:23
  176. 176 How to use multiple attributes in XPath 02:09
  177. 177 XPath exam 05:45
  178. 178 XPath exam answers 09:33
  179. 179 Navigation with Selenium WebDriver 02:04
  180. 180 Navigation quiz 02:50
  181. 181 Navigation quiz answer 03:50
  182. 182 Element manipulation with WebDriver 04:40
  183. 183 How to fill out a form 05:50
  184. 184 Quiz on element manipulation 01:49
  185. 185 Answer to manipulation quiz 09:43
  186. 186 CurrentWindowHandle, WindowHandes, PageSource, Title 05:38
  187. 187 WebDriver URL 00:57
  188. 188 Interrogating IWebElements 03:54
  189. 189 Learning all IWebElement properties 05:57
  190. 190 Element interrogation quiz 03:11
  191. 191 Element interrogation quiz answer 04:07
  192. 192 Conclusions 03:21
  193. 193 Section syllabus 02:19
  194. 194 Resources 01:06
  195. 195 Why did this test fail 04:19
  196. 196 Answer to why the test is flaky 02:45
  197. 197 What is an implicit wait in selenium 04:16
  198. 198 2nd example of an implicit wait 04:29
  199. 199 How to make implicit wait work 03:32
  200. 200 Quiz on implicit waits 05:16
  201. 201 Answer to quiz on implicit waits 02:00
  202. 202 What's next 01:21
  203. 203 What are explicit waits 03:01
  204. 204 2 types of explicit waits 03:48
  205. 205 WebDriverWait 04:17
  206. 206 ExpectedConditions 04:45
  207. 207 Customizing the WebDriverWait 07:24
  208. 208 What is the future of ExpectedConditions 11:56
  209. 209 Proper synchronization quiz 05:39
  210. 210 Synchronization quiz answer 07:38
  211. 211 What topics will be covered 01:18
  212. 212 What are user interactions in Selenium Webdriver 02:12
  213. 213 What are the different kind of user interactions 02:27
  214. 214 Don't use Firefox please 02:34
  215. 215 How to create an Actions class in Webdriver 03:21
  216. 216 Analyzing our application under test 03:43
  217. 217 Writing the drag and drop test 04:42
  218. 218 Finishing the first drag and drop test 03:16
  219. 219 Executing the first drag and drop test 03:33
  220. 220 Starting to write the 2nd drag and drop example 03:48
  221. 221 Writing a 2nd drag and drop example 02:58
  222. 222 Running a 2nd drag and drop example 02:05
  223. 223 Drag and drop quiz question 01:07
  224. 224 Drag and drop quiz answer 03:39
  225. 225 How to do a resize action with selenium webdriver 04:36
  226. 226 How to open developer tools with selenium webdriver 05:28
  227. 227 Running a test that opens a network tab in firefox 02:00
  228. 228 Drag and drop with html 5 quiz question 00:58
  229. 229 Drag and drop with html 5 answer part 1 04:32
  230. 230 Drag and drop with html 5 answer part 2 02:48
  231. 231 How to draw on a canvas with selenium quiz 00:33
  232. 232 How to draw on a canvas with selenium quiz answer 04:07
  233. 233 Conclusions 03:38
  234. 234 Overview of the rest of the course 02:04
  235. 235 Section intro and solution overview 03:17
  236. 236 Problems with record and replay 08:31
  237. 237 Problems with keyword driven testing 07:20
  238. 238 What does the code actually test? 00:58
  239. 239 Introduction to the Page Object Pattern 01:56
  240. 240 Advantages and Disadvantages of the Page Object Pattern 04:24
  241. 241 What is the DRY Principle 03:58
  242. 242 Quiz on coding page objects 01:41
  243. 243 How to start web application and run automation 06:25
  244. 244 Page Object anti-patterns 03:38
  245. 245 Automation quiz 02:26
  246. 246 Why did you struggle? 03:18
  247. 247 Examples of bad automation tests 06:03
  248. 248 Introduction to TDD 04:55
  249. 249 Check execution environment 04:34
  250. 250 Red and green phase 03:50
  251. 251 Opening complicated page 07:51
  252. 252 Finish green phase 02:43
  253. 253 Refactor 01:51
  254. 254 Red 01:44
  255. 255 Locating amazon search bar 03:19
  256. 256 Green 04:57
  257. 257 Green 2 01:46
  258. 258 Another refactor 02:56
  259. 259 Quiz on red and green 02:00
  260. 260 Quiz answer 07:48
  261. 261 Conclusions for TDD 03:53
  262. 262 Conclusions for the last several sections 02:20
  263. 263 Getting started with Selenium framework 02:11
  264. 264 Writing the test skeleton 06:12
  265. 265 Fixing compiler errors in test 06:52
  266. 266 Quiz-How to setup ChromeDriver 01:00
  267. 267 Answer to how to setup ChromeDriver 05:23
  268. 268 Getting ChromeDriver to run 04:22
  269. 269 Making GoTo and IsVisible work 05:12
  270. 270 FillOutFormAndSubmit method 07:09
  271. 271 Making 1st test pass 05:57
  272. 272 Refactor 05:45
  273. 273 Quiz on best practices 00:56
  274. 274 Answer on best practices 02:50
  275. 275 Creating a BasePage class 04:54
  276. 276 Making functional test fail 05:39
  277. 277 Summary 05:50
  278. 278 Introduction to sprint 2 05:07
  279. 279 Adding Lastname field 04:46
  280. 280 Fixing a possible problem 04:19
  281. 281 Refactor phase 02:23
  282. 282 Adding a TestCleanup 04:52
  283. 283 Quiz-how to remove more duplication? 02:52
  284. 284 Quiz answer on duplication 04:10
  285. 285 Answer on duplication 2 03:39
  286. 286 Answer on duplication 3 03:32
  287. 287 Red phase 06:34
  288. 288 Red phase 2 05:07
  289. 289 Red phase 3 04:49
  290. 290 Importance of Refactoring 05:19
  291. 291 Importance of Refactoring 2 02:47
  292. 292 Sprint 3 Quiz 01:28
  293. 293 Adding a Gender 03:25
  294. 294 Update FillOutFormAndSubmit 04:55
  295. 295 Refactoring 03:07
  296. 296 Red and Green phase 03:58
  297. 297 Quiz on Other gender 02:04
  298. 298 Quiz answer 02:25
  299. 299 Refactoring all 3 tests 03:21
  300. 300 Refactoring out Assertsion 05:02
  301. 301 Why we dont refactor the rest 01:38
  302. 302 Sprint 4 Requirements 01:52
  303. 303 FillOutEmergencyContactForm method 07:12
  304. 304 Refactoring all tests 1 04:20
  305. 305 SetGenderForEmergencyContact refactor 04:27
  306. 306 Red and green phases of sprint 4 02:39
  307. 307 Conclusions 03:41
  308. 308 Conclusions 2 03:09
  309. 309 How to organize your test cases and classes 04:04
  310. 310 Test organization in code 02:11
  311. 311 Quiz on test case 1 01:37
  312. 312 Skeleton of test case 03:07
  313. 313 Implementing the test 09:10
  314. 314 WebDriverFactory 10:43
  315. 315 Making test pass 03:38
  316. 316 Making test fail 04:03
  317. 317 Explaining WebDriverFactory 03:43
  318. 318 Quiz 2 02:15
  319. 319 Skeleton of test 01:45
  320. 320 Implementing the test 06:54
  321. 321 Running Test 2 02:30
  322. 322 A new problem 01:27
  323. 323 Creating BaseTest 05:15
  324. 324 Problems with large page objects 05:08
  325. 325 How to keep page objects small 04:02
  326. 326 Quiz on slider 01:35
  327. 327 Quiz answer on slider 07:47
  328. 328 How to organize the solution 05:52
  329. 329 How to encapsulate page locators 04:09
  330. 330 Course syllabus and prerequisites 03:56
  331. 331 Why is logging important 02:50
  332. 332 Introduction to NLog 07:08
  333. 333 How to install NLog 04:25
  334. 334 Starting to log 04:24
  335. 335 Why Info level is important 02:54
  336. 336 Understanding NLog 05:47
  337. 337 Layout in NLog 02:22
  338. 338 fileName and keepFileOpen in NLog 02:01
  339. 339 Creating the first log records 05:33
  340. 340 More information about Info logging 05:04
  341. 341 NLog Exam 05:36
  342. 342 NLog exam answer 05:20
  343. 343 NLog bug logger 02:29
  344. 344 What to focus on 01:34
  345. 345 Why do reporting in automation 01:46
  346. 346 Overview of Extent Reports 02:22
  347. 347 Overview of how to use Extent Reports 04:08
  348. 348 Solution layout and new classes 02:55
  349. 349 The Reporter class 04:10
  350. 350 The BaseTest class 04:08
  351. 351 The ScreenshotTaker class 02:33
  352. 352 Viewing test results 03:33
  353. 353 How to use the Reporter class 05:47
  354. 354 Quiz on Reporter.cs 02:04
  355. 355 Quiz answer for Reporter.cs usage 07:34
  356. 356 Conclusions about Logging and Reporting 05:26
  357. 357 Final exam 04:43
  358. 358 HTML Report and steps 04:13
  359. 359 TCID4 Answer 04:30
  360. 360 TCID5 Answer 04:34
  361. 361 TCID6 Answer part 1 06:45
  362. 362 TCID6 Answer part 2 07:04
  363. 363 TCID7 Answer 05:21
  364. 364 Prerequisites 04:14
  365. 365 Syllabus for Introduction to Sauce Labs section 01:35
  366. 366 Advantages of Sauce Labs 11:26
  367. 367 Disadvantages of Sauce Labs 13:15
  368. 368 How to sign up for Sauce Labs trial 00:52
  369. 369 Overview of Sauce Labs dashboard 01:33
  370. 370 Manual cross-browser testing 03:56
  371. 371 Tunnels, analytics, and archive tabs 03:06
  372. 372 Overview of solution 01:31
  373. 373 RemoteWebDriver 03:55
  374. 374 DesiredCapabilities 03:54
  375. 375 How to find Sauce Labs account info 03:00
  376. 376 How to run tests 02:02
  377. 377 How to analyze tests in Sauce Labs 04:00
  378. 378 How to do live debugging in Sauce 03:38
  379. 379 Sauce Labs Timeouts 02:45
  380. 380 Quiz on Sauce Labs concepts 03:45
  381. 381 Quiz answer on Sauce concepts 02:28
  382. 382 Sauce labs advanced topics course promo video 02:35
  383. 383 Overview of new project layout 05:27
  384. 384 How to run tests in parallel 03:55
  385. 385 How to set level of parallelism 05:11
  386. 386 Layout of data driven tests 04:22
  387. 387 How to do data driven cross browser testing in sauce labs 07:28
  388. 388 How to configure mobile automation in sauce labs 02:27
  389. 389 How to set test names, status, log steps in sauce labs 11:27
  390. 390 Sauce labs test insights 03:58
  391. 391 Sauce analytics trends 04:12
  392. 392 Exam on sauce concepts 04:02
  393. 393 Exam answer on sauce concepts 05:35
  394. 394 Course overview 00:57
  395. 395 Course syllabus 01:42
  396. 396 Create Applitools account and install Nuget packages 04:16
  397. 397 Why must we automate visual testing 09:07
  398. 398 Benefits of Applitools 09:57
  399. 399 What is a baseline in Applitools 07:43
  400. 400 Code overview 05:36
  401. 401 Baseline examples 08:42
  402. 402 1st comparison 05:16
  403. 403 Zooming, resizing and layers 05:32
  404. 404 Toggling and Floating region 03:44
  405. 405 Exact match level 05:05
  406. 406 Strict match level 02:41
  407. 407 Content match level 05:51
  408. 408 Layout match level 05:22
  409. 409 Introduction to Ignore regions 03:18
  410. 410 Ignore regions in code 10:54
  411. 411 Ignoring multiple regions 02:25
  412. 412 Floating region 03:15
  413. 413 Strict region 02:51
  414. 414 Content region 02:01
  415. 415 Layout region 01:12
  416. 416 Test Manager UI 11:04
  417. 417 Batches 10:42
  418. 418 Full page screenshots with CSS stitch 12:57
  419. 419 CSS stitching vs standard scroll 08:06
  420. 420 Bugs and test steps in UI 08:11
  421. 421 Test steps code 04:57
  422. 422 Fluent API 08:41
  423. 423 How programatic regions look 04:57
  424. 424 Conclusions 06:59
  425. 425 Introduction 02:49
  426. 426 Prerequisites before proceeding 02:42
  427. 427 Positives and negatives of the POM Framework 03:46
  428. 428 Downloading the POM Framework 03:36
  429. 429 Downloading Resharper 02:36
  430. 430 Opening visual studio and starting a new project 02:57
  431. 431 How to install Selenium WebDriver Nuget packages 02:35
  432. 432 How to create a unit test project and add a reference 02:15
  433. 433 How to rename a test 02:42
  434. 434 proper naming conventions of tests 01:12
  435. 435 How to code the first test 02:07
  436. 436 Understanding the first test 02:37
  437. 437 understanding the first test 2 02:38
  438. 438 understanding the first test 3 03:27
  439. 439 coding the second test 03:26
  440. 440 identifying elements of the second test 03:46
  441. 441 Fail, refactor, pass 03:16
  442. 442 fixing the tests 02:48
  443. 443 how to install chrome driver 02:31
  444. 444 Refactoring - All videos 25:08
  445. 445 Understanding a problem with these tests 04:50
  446. 446 Refactoring our test based on the DRY principle 04:22
  447. 447 Refactoring our test based on the DRY principle 2 01:47
  448. 448 Comparing the 2 tests before and after refactoring 02:25
  449. 449 Considering other problems with the current test 03:16
  450. 450 Doing a second refactoring of the test 03:30
  451. 451 Running the test and analyzing it one more time 01:45
  452. 452 Automation testing Exercise 03:18
  453. 453 Introduction to the Page Object Model 03:13
  454. 454 Introduction to the Page Object Model 2 02:22
  455. 455 Benefits of the Page Object Model 03:21
  456. 456 Benefits of the Page Object Model 2 03:19
  457. 457 Words of wisdom from Albert Einstein 04:01
  458. 458 How to start removing problems and creating a TestBase class 02:16
  459. 459 How to code an Initialize method for the TestBase class 02:20
  460. 460 How to create a static driver and the Initialize method 04:00
  461. 461 Moving the Browser class to its own file and cleaning up 02:22
  462. 462 Cleaning up the new test to inherit from TestBase 04:20
  463. 463 Comparing the new test with the older test 02:46
  464. 464 How to create a test cleanup method 02:33
  465. 465 Hermetic Test Design Pattern 04:47
  466. 466 More design patterns 02:13
  467. 467 Designing the test 03:08
  468. 468 How to create a Pages class 03:38
  469. 469 Coding the Pages class 02:33
  470. 470 Coding the Pages class 2 03:12
  471. 471 Coding the LoginPage 02:28
  472. 472 Adding a goto method to the Browser class 02:35
  473. 473 Writing the login method of the Login page 03:56
  474. 474 Running the test and checking the results 04:04
  475. 475 Creating a membership page object 02:15
  476. 476 Implementing the IsAt method 03:08
  477. 477 Rerunning the test 03:23
  478. 478 Seeing the test results of the test 01:13
  479. 479 Making sure that the test fails successfully and closing comments 03:01
  480. 480 comparing the 2 tests 05:10
  481. 481 writing the 3rd test 04:06
  482. 482 writing the 4th test 03:40
  483. 483 designing an explicit wait 3 04:19
  484. 484 designing an explicit wait 5 03:48
  485. 485 final run of the unit tests 05:08
  486. 486 Developing automation framework-all videos 53:35
  487. 487 Refactoring - all videos in one 25:08
  488. 488 Creating test automation - all videos 01:22:12
  489. 489 Analyzing the automation test-all videos 02:05:04
  490. 490 Framework-all videos 01:09:23
  491. 491 Recording automation test using selenium builder 03:18
  492. 492 Understanding the layout of the solution and the recorded test 04:39
  493. 493 Changing the remove webdriver to firefox 03:37
  494. 494 Undestandig why the test failed a 2nd time 01:46
  495. 495 Finally getting the recorded test to run 01:54
  496. 496 What are the problems with recorded functional tests 05:09
  497. 497 Conclusions regarding recorded tests 01:54
  498. 498 What can we do to fix problems with recorded functional tests? 01:27
  499. 499 Introduction to keyword driven testing 04:25
  500. 500 What can change about KDF 08:14
  501. 501 Advantages and Disadvantages of KDF tests 02:15
  502. 502 Transitioning into Page Object Pattern 01:14
  503. 503 First look at a functional test using the Page Object Model 03:29
  504. 504 Page objects look similar 01:03
  505. 505 Quiz - What about our page objects is WET 01:58
  506. 506 Quiz Answer to why our page objects are WET 01:21
  507. 507 How to add a BasePage class to our page objects 02:42

Related courses

Frequently asked questions

What is Selenium Webdriver Complete Course - Build A Framework about?
Are you struggling with Selenium WebDriver testing? Do your tests often break without reason? Can you efficiently run 500 tests a day with one click? If these challenges sound familiar, you're not alone. Many have faced similar…
Who teaches Selenium Webdriver Complete Course - Build A Framework?
Selenium Webdriver Complete Course - Build A Framework is taught by Udemy. You can find more courses by this instructor on the corresponding source page.
How long is Selenium Webdriver Complete Course - Build A Framework?
Selenium Webdriver Complete Course - Build A Framework contains 507 lessons with a total runtime of 42 hours 27 minutes. All lessons are available to watch online at your own pace.
Is Selenium Webdriver Complete Course - Build A Framework free to watch?
Selenium Webdriver Complete Course - Build A Framework is part of CourseFlix's premium catalog. A CourseFlix subscription unlocks the full video player; the course description, table of contents, and preview information are available to everyone.
Where can I watch Selenium Webdriver Complete Course - Build A Framework online?
Selenium Webdriver Complete Course - Build A Framework is available to watch online on CourseFlix at https://courseflix.net/course/selenium-webdriver-complete-course-build-a-framework. The page hosts every lesson with the integrated video player; no download is required.