Cypress EndtoEnd Testing Getting Started

Learn how to use Cypress to design, build and run powerful and realistic end-to-end (E2E) tests with ease.
Cypress EndtoEnd Testing Getting Started
File Size :
2.82 GB
Total length :
6h 13m



Academind by Maximilian Schwarzmüller


Last update




Cypress EndtoEnd Testing Getting Started

What you’ll learn

Add end-to-end testing workflows to projects
Define and use core Cypress concepts & techniques
Design and run automated end-to-end tests with Cypress
Implement realistic website user workflows with Cypress

Cypress EndtoEnd Testing Getting Started


Basic JavaScript knowledge is required
Basic web development knowledge is required (no specific framework)
NO prior Cypress knowledge is required


Automated testing is a vital part of modern application development. Of course, website development is no exception – you must be able to run automated tests to efficiently detect bugs and regressions.This course teaches you how to write and run end-to-end (E2E) tests with Cypress – one of the most popular web development E2E testing tools can you can use these days!You will learn:What exactly Cypress is and why E2E testing mattersHow to install and use CypressHow to write and run E2E tests with CypressHow to simulate realistic website user flows by selecting elements and simulating user interaction (button clicks, keyboard typing & more)How to write good assertions (and what assertions are)Which core features and concepts Cypress offersHow to use basic and more advanced Cypress conceptsHow to efficiently test third-party codeHow to deal with network (HTTP) requests and databasesHow to test user authentication flowsAnd much more!All these topics will be taught from the ground up, with no prior Cypress knowledge required! You do need basic web development and JavaScript knowledge though.This course focuses on the core Cypress concepts and explores all basic as well as various more advanced Cypress features.By the end of this course, you’ll have a solid set of Cypress fundamentals and you’ll be ready to dive deeper into Cypress and end-to-end testing!


Section 1: Introduction

Lecture 1 Welcome To The Course!

Lecture 2 What is Cypress & End-to-End Testing? And Why Should You Care?

Lecture 3 Installing & Using Cypress

Lecture 4 How Cypress Tests Are Organized & Stored

Lecture 5 Adjusting Our First Test

Lecture 6 Writing A More Realistic Test

Lecture 7 About The Course

Lecture 8 Course Resources (Slides, Code, Discord)

Section 2: Cypress Basics – Core Features & Syntax

Lecture 9 Module Introduction

Lecture 10 Project Setup

Lecture 11 Creating Suites & Tests

Lecture 12 Visiting Pages inside of E2E Tests

Lecture 13 Let the IDE (VS Code) Help You

Lecture 14 Selecting Elements & Evaluating Test Results

Lecture 15 Selecting By Text

Lecture 16 Implicit and Explicit Assertions

Lecture 17 get() vs find()

Lecture 18 Why You Need To Simulate User Interaction

Lecture 19 Simulating User Interaction

Lecture 20 Proper Assertions Are Key!

Lecture 21 Time To Practice!

Lecture 22 Simulating Keyboard Typing & Writing Good Assertions

Lecture 23 Checking For Partial Text

Lecture 24 Selecting Dropdown Values

Lecture 25 Cypress Tests Run In Isolation

Lecture 26 Time For More Queries

Lecture 27 Summary

Section 3: Diving Deeper: Element Selection, Assertions & More

Lecture 28 Module Introduction

Lecture 29 Project Setup

Lecture 30 Selecting Elements – The Best Practice Way

Lecture 31 Testing Page Navigation

Lecture 32 More on Selecting Elements

Lecture 33 Repetition and More Assertions

Lecture 34 Chaining Commands

Lecture 35 Working with Values & Aliases

Lecture 36 Getting More Direct Element Access via then()

Lecture 37 A Closer Look At then()

Lecture 38 Simulating Special Key Presses

Lecture 39 Another Example

Lecture 40 Losing & Gaining Focus

Lecture 41 Aliases In Action

Lecture 42 Using Cypress Studio For Test Evaluation

Lecture 43 Running Tests Without Cypress Studio & Working with Screenshots + Videos

Lecture 44 Changing Subjects

Lecture 45 Taking Screenshots

Lecture 46 should() instead of then()

Lecture 47 Summary

Section 4: Configuration & Customization

Lecture 48 Module Introduction

Lecture 49 Project Setup

Lecture 50 The Global Config File

Lecture 51 Understanding Timeouts

Lecture 52 Global vs Local Config

Lecture 53 Setting the Test Browser

Lecture 54 Configuring the baseURL

Lecture 55 Sharing Logic with Test Hooks

Lecture 56 Introducing Custom Commands & Queries

Lecture 57 Creating a Custom Command

Lecture 58 Creating a Custom Query

Lecture 59 Understanding Tasks

Lecture 60 Summary

Section 5: Working with Stubs, Spies, Fixtures & Manipulating the Clock

Lecture 61 Module Introduction

Lecture 62 Starting Project

Lecture 63 Understanding the Problem

Lecture 64 Understanding Stubs

Lecture 65 Creating & Using a Stub

Lecture 66 When Empty Stubs Are Not Enough

Lecture 67 Adding a Fake Stub Implementation

Lecture 68 Using Stubs Across Tests

Lecture 69 Stubs with Return Values

Lecture 70 Evaluating Stub Arguments

Lecture 71 Using Fixtures

Lecture 72 Understanding Spies

Lecture 73 Creating & Using Spies

Lecture 74 The Problem With Timers

Lecture 75 Manipulating the Clock

Lecture 76 Summary

Section 6: Network (HTTP) Requests, Databases & Authentication

Lecture 77 Module Introduction

Lecture 78 Starting Project

Lecture 79 Writing a First (Problematic) Test

Lecture 80 The Problem with Tests & Databases

Lecture 81 Creating a Test Database

Lecture 82 Seeding the Test Database Before Every Test

Lecture 83 Another Database-dependent Test

Lecture 84 Understanding & Using Interceptors

Lecture 85 You Can’t Always Use Interceptors

Lecture 86 More Intercepting!

Lecture 87 Testing APIs with Test Requests

Lecture 88 Summary: Different Network Request Strategies

Lecture 89 Testing Authentication Flows & Asserting Cookie Values

Lecture 90 Adding a “Login” Test

Lecture 91 Creating a Reusable Login Command

Lecture 92 Accessing Interceptor Request & Response Data

Lecture 93 Summary

Section 7: Roundup & Next Steps

Lecture 94 Roundup & Next Steps

Lecture 95 Bonus Lecture

Intermediate web developers who have no or very little (end-to-end) testing experience,Web developers who want to add automated end-to-end tests to their projects

Course Information:

Udemy | English | 6h 13m | 2.82 GB
Created by: Academind by Maximilian Schwarzmüller

You Can See More Courses in the Developer >> Greetings from

New Courses

Scroll to Top