World Congress 2023 • Oct 23, 2023

Advanced Cypress: custom assertions and tasks

Luca Micieli

Break out of Cypress browser isolation using Node.js tasks. Discover how custom, type-safe Chai assertions can make your test suite resilient to routine UI and translation changes.

Pause
Mute Enter Fullscreen
#1 about 2 min

Cypress internal architecture and test execution constraints

How running tests within the browser process prevents direct native access to external databases or the file system.

#2 about 1 min

Creating configuration tasks executing inside Node processes

Bypass browser limitations by defining remote procedure calls executed directly within the Cypress Node configuration context.

#3 about 3 min

Database seeding and handling complex external authentication flows

Implement configuration tasks to initialize database state or handle separate window flows like OAuth interactions.

#4 about 2 min

Extending the Chai library with custom Cypress assertions

Improve test legibility by creating reusable Chai assertions connected directly to internal application logic.

#5 about 3 min

TypeScript integration and testing dynamic translated text keys

Handle internationalization localization checks safely and implement robust static typing using module declaration merging.

Matching moments

3:27 min

Choosing between Puppeteer and Cypress for browser tasks

Miki Lombardi · JS Congress

3:48 min

Analyzing test automation challenges and the Cypress timeline

Filip Hric · LIVE

2:45 min

Advantages of using Cypress for testing workflows

Anna Mcdougall · JS Congress

2:23 min

Keeping up with Web3 testing tools

Soumaya Erradi · LIVE

2:50 min

Introduction to end-to-end testing with Cypress

Soumaya Erradi · LIVE

1:24 min

Intercepting backend responses natively using Cypress network methods

Anna Mcdougall · JS Congress