We may earn an affiliate commission when you visit our partners.
Course image
Academind by Maximilian Schwarzmüller and Maximilian Schwarzmüller

Automated testing is a vital part of modern application development. Of course, website development is no exception here - you must be able to run automated tests to efficiently detect bugs and regressions.

Read more

Automated testing is a vital part of modern application development. Of course, website development is no exception here - 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 you can use these days.

You will learn:

  • What exactly Cypress is and why E2E testing matters

  • How to install and use Cypress

  • How to write and run E2E tests with Cypress

  • How 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 offers

  • How to use basic and more advanced Cypress concepts

  • How to efficiently test third-party code

  • How to deal with network (HTTP) requests and databases

  • How to test user authentication flows

  • And 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.

Enroll now

What's inside

Learning objectives

  • 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

Syllabus

Learn what exactly Cypress is, why end-to-end testing is important and what you may expect from this course.
Welcome To The Course!
What is Cypress & End-to-End Testing? And Why Should You Care?
Read more
Installing & Using Cypress
How Cypress Tests Are Organized & Stored
Adjusting Our First Test
Writing A More Realistic Test
About The Course
Course Resources (Slides, Code, Discord)
Learn how to write Cypress tests, select element, add assertions and simulate user interaction in your end-to-end (e2e) tests.
Module Introduction
Project Setup
Creating Suites & Tests
Visiting Pages inside of E2E Tests
Let the IDE (VS Code) Help You
Selecting Elements & Evaluating Test Results
Selecting By Text
Implicit and Explicit Assertions
get() vs find()
Why You Need To Simulate User Interaction
Simulating User Interaction
Proper Assertions Are Key!
Time To Practice!
Simulating Keyboard Typing & Writing Good Assertions
Checking For Partial Text
Selecting Dropdown Values
Cypress Tests Run In Isolation
Time For More Queries
Summary
Time to dive deeper! Learn more about how to select elements, work with elements and assert exactly what you want to evaluate.
Selecting Elements - The Best Practice Way
Testing Page Navigation
More on Selecting Elements
Repetition and More Assertions
Chaining Commands
Working with Values & Aliases
Getting More Direct Element Access via then()
A Closer Look At then()
Simulating Special Key Presses
Another Example
Losing & Gaining Focus
Aliases In Action
Using Cypress Studio For Test Evaluation
Running Tests Without Cypress Studio & Working with Screenshots + Videos
Changing Subjects
Taking Screenshots
should() instead of then()
Learn how to properly configure important Cypress settings and how to outsource repeated work and tasks.
The Global Config File
Understanding Timeouts
Global vs Local Config
Setting the Test Browser
Configuring the baseURL
Sharing Logic with Test Hooks
Introducing Custom Commands & Queries
Creating a Custom Command
Creating a Custom Query
Understanding Tasks
Learn how to use (dummy) data and logic in your tests, how to control the execution of third-party code and how to manipulate the time!
Starting Project
Understanding the Problem
Understanding Stubs
Creating & Using a Stub
When Empty Stubs Are Not Enough
Adding a Fake Stub Implementation
Using Stubs Across Tests
Stubs with Return Values
Evaluating Stub Arguments
Using Fixtures
Understanding Spies
Creating & Using Spies
The Problem With Timers
Manipulating the Clock
Learn about different strategies for dealing with network (HTTP) requests, databases and authentication in your end-to-end (E2E) tests.
Writing a First (Problematic) Test
The Problem with Tests & Databases
Creating a Test Database
Seeding the Test Database Before Every Test
Another Database-dependent Test
Understanding & Using Interceptors
You Can't Always Use Interceptors
More Intercepting!
Testing APIs with Test Requests
Summary: Different Network Request Strategies
Testing Authentication Flows & Asserting Cookie Values
Adding a "Login" Test
Creating a Reusable Login Command
Accessing Interceptor Request & Response Data
Learn how to continue after finishing this course.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Explores Cypress, an industry standard web development End-to-End testing framework
Taught by instructors affiliated with Academind, recognized in web development training
Develops key Cypress skills and concepts for efficient end-to-end website testing
Requires learners to have basic web development and JavaScript knowledge
Covers core Cypress concepts and explores both basic and advanced features
Suitable for learners aiming to build foundational Cypress skills

Save this course

Save Cypress End-to-End Testing - Getting Started to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Cypress End-to-End Testing - Getting Started with these activities:
Review JavaScript fundamentals
Strengthen prerequisite knowledge for the course.
Show steps
  • Review online resources or take a JavaScript refresher course.
Show all one activities

Career center

Learners who complete Cypress End-to-End Testing - Getting Started will develop knowledge and skills that may be useful to these careers:
Quality Assurance Analyst
Quality Assurance Analysts are responsible for ensuring that software applications meet quality standards. They use a variety of testing methods and tools to test software applications. The Cypress End-to-End Testing Course can help Quality Assurance Analysts write and run automated end-to-end (E2E) tests with Cypress, one of the most popular web development E2E testing tools.
Web Developer
Web Developers are responsible for creating and maintaining websites and web applications. They use a variety of programming languages and technologies to create websites that are both visually appealing and functional. The Cypress End-to-End Testing Course can help Web Developers write and run automated end-to-end (E2E) tests with Cypress, one of the most popular web development E2E testing tools.
Software Tester
Software Testers are responsible for testing software applications to ensure that they are free of bugs and defects. They use a variety of testing methods and tools to test software applications. The Cypress End-to-End Testing Course can help Software Testers write and run automated end-to-end (E2E) tests with Cypress, one of the most popular web development E2E testing tools.
Front-End Developer
Front End Developers are responsible for creating the user interface of websites and web applications. They use a variety of programming languages and technologies to create websites that are both visually appealing and functional. The Cypress End-to-End Testing Course can help Front End Developers write and run automated end-to-end (E2E) tests with Cypress, one of the most popular web development E2E testing tools.
Full-Stack Developer
Full Stack Developers are responsible for creating both the front-end and back-end of websites and web applications. They use a variety of programming languages and technologies to create websites that are both visually appealing, functional, secure, and scalable. The Cypress End-to-End Testing Course may be useful for Full Stack Developers who want to learn how to write and run automated end-to-end (E2E) tests with Cypress.
Back-End Developer
Back End Developers are responsible for creating the server-side of websites and web applications. They use a variety of programming languages and technologies to create websites that are both secure and scalable. The Cypress End-to-End Testing Course may be useful for Back End Developers who want to learn how to write and run automated end-to-end (E2E) tests with Cypress.
Test Engineer
Test Engineers are responsible for testing hardware and software products to ensure that they meet quality standards. They use a variety of testing methods and tools to test products. The Cypress End-to-End Testing Course may be useful for Test Engineers who want to learn how to write and run automated end-to-end (E2E) tests with Cypress.
Product Manager
Product Managers are responsible for managing the development and launch of new products. They work with a variety of stakeholders to ensure that products meet the needs of customers. The Cypress End-to-End Testing Course may be useful for Product Managers who want to learn how to write and run automated end-to-end (E2E) tests with Cypress.
Project Manager
Project Managers are responsible for planning, executing, and closing projects. They work with a variety of stakeholders to ensure that projects are completed on time, within budget, and to the required quality standards. The Cypress End-to-End Testing Course may be useful for Project Managers who want to learn how to write and run automated end-to-end (E2E) tests with Cypress.
Systems Analyst
Systems Analysts are responsible for analyzing and designing computer systems. They work with a variety of stakeholders to ensure that systems meet the needs of users. The Cypress End-to-End Testing Course may be useful for Systems Analysts who want to learn how to write and run automated end-to-end (E2E) tests with Cypress.
Business Analyst
Business Analysts are responsible for analyzing business needs and developing solutions to meet those needs. They work with a variety of stakeholders to ensure that solutions are both effective and efficient. The Cypress End-to-End Testing Course may be useful for Business Analysts who want to learn how to write and run automated end-to-end (E2E) tests with Cypress.
Network Administrator
Network Administrators are responsible for managing and maintaining computer networks. They work with a variety of stakeholders to ensure that networks are secure, reliable, and performant. The Cypress End-to-End Testing Course may be useful for Network Administrators who want to learn how to write and run automated end-to-end (E2E) tests with Cypress.
Database Administrator
Database Administrators are responsible for managing and maintaining databases. They work with a variety of stakeholders to ensure that databases are secure, reliable, and performant. The Cypress End-to-End Testing Course may be useful for Database Administrators who want to learn how to write and run automated end-to-end (E2E) tests with Cypress.
Security Analyst
Security Analysts are responsible for protecting computer systems and networks from security threats. They work with a variety of stakeholders to ensure that systems and networks are secure and compliant with security regulations. The Cypress End-to-End Testing Course may be useful for Security Analysts who want to learn how to write and run automated end-to-end (E2E) tests with Cypress.
Data Analyst
Data Analysts are responsible for collecting, analyzing, and interpreting data. They work with a variety of stakeholders to ensure that data is used to make informed decisions. The Cypress End-to-End Testing Course may be useful for Data Analysts who want to learn how to write and run automated end-to-end (E2E) tests with Cypress.

Reading list

We've selected six books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Cypress End-to-End Testing - Getting Started.
Provides a comprehensive guide to the JavaScript language. It good resource for those who want to learn the language in depth. This book is helpful in providing background or prerequisite knowledge. It adds more depth or breadth to the existing course.
Provides a comprehensive and engaging introduction to JavaScript. It good resource for those who want to learn the language in a fun and interactive way. This book is more valuable as additional reading than it is as a current reference.
Provides a beginner-friendly introduction to JavaScript. It good resource for those who are new to JavaScript or who want to brush up on the basics. This book is helpful in providing background or prerequisite knowledge.
Provides a concise guide to the good parts of JavaScript. It good resource for those who want to learn the language quickly and efficiently. This book useful reference tool. It is also commonly used as a textbook at academic institutions or by industry professionals.
Provides a comprehensive guide to continuous integration for JavaScript. This book is more valuable as additional reading than it is as a current reference.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Cypress End-to-End Testing - Getting Started.
Vue 3 End-to-end Testing with Cypress
Most relevant
Cypress 4: End-to-end JavaScript Testing
Most relevant
End-to-end Vue Testing with Cypress 6
Most relevant
End-to-end Angular Testing with Cypress
Most relevant
End to End automation testing with Cypress
Most relevant
Cypress -Modern Automation Testing from Scratch +...
Most relevant
Microsoft Azure Developer: Performing Automated End-to...
Most relevant
Getting Started with TestNG 6
Most relevant
Java SE 17 Unit Testing with JUnit
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser