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
Requirements
Basic JavaScript knowledge is required
Basic web development knowledge is required (no specific framework)
NO prior Cypress knowledge is required
Description
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!
Overview
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 CourseDown.com