Cypress: Web Automation Testing from Zero to Hero
E2E Web UI Automation from scratch. Up to date with Cypress v13 (09/2023)
Created by Artem Bondar | 10 hours on-demand video course
This class will give you a complete understanding of what is Cypress framework and you will learn how to use all key framework capabilities. Cypress is a very modern JavaScript-based framework. It has everything you need right out of the box: Test Runner, Assertion libraries, reporters and so on. It s very nicely and easily can be integrated into the front-end application (this is what we will do in the class) and your tests will be executed in the same run loop as your application. That’s why this framework is very fast! And don’t worry if you never used JavaScript before. Writing automation tests in Cypress looks more like knowing what sequence of the Cypress commands you should call to perform certain actions in the browser. It s not really programming. It’s a kind of scripting following Cypress rules. For those who is new to the programming – there is a section about JavaScript fundamentals
We will start with the very basic concepts of Web UI Automation so you will have the right foundation from the beginning (From Zero). Even if you will use any other framework for web automation in the future, the basics from this class will remain with you forever and will be very useful. I promise that you will be a HERO in building locators for any web element on the page. This is one of the most important parts of UI Automation and I have dedicated many minutes to a detailed explanation of that.
Unlike many other Automation frameworks, Cypress can interact with APIs as well and you can automate API testing with Cypress actually. So again, if you don’t know what API is about, we will start with Zero and learn everything you need to know about Cypress’s capabilities for API interaction. I would not recommend building API automation framework based on Cypess, but its API capability is very useful in E2E testing and we will cover the use cases for that in this class.
And we definitely go through Page Objects, which is very important to use! When you have 10 to 20 tests, you can maintain your code as is, but when you have 200-300 tests, the maintainability of the test framework is a number one priority. The right structure of page objects is a key to code reusability (no copy/pasting your code) and maintainability.
Also, we will go through different advanced topics such as environment variables, setting up multiple reporters, cypress retry for failed tests, and eventually, we will run tests in Docker Container. If that will be your first experience with Docker, no worries, we will talk about basic Docker concepts as well.
By the end of the class, trust me, you will be a Cypress Hero.
What you’ll learn
- How to set up and configure Cypress
- How to build locators for any Web Elements using powerful jQuery Selector Engine built-in Cypress (forget about X-Path)
- How to interact and automate any kind of web components, such as: input fields, buttons, drop-downs, lists and menus, pop ups, dialog boxes, web tables, date selectors and so on.
- What is API. How to interact with APIs, mock API response and make assertions. Also how to create test data precondition using API calls and Headless user authentication
- How to organize and reuse code with Page Object design pattern.
- How to configure multiple custom reporters, retry logic for failed tests and run tests in Docker container
Recommended Course
Cypress -Modern Automation Testing from Scratch + Frameworks