Tips & Tricks for Cypress

Photo by Hunter Haley on Unsplash

🏆 This post was featured in Software Testing Weekly, issue 55

This is a collection of simple and recurring scenarios when writing Cypress tests. For more complex recipes, check the official doc.

  • Setup
    • Abort cypress after first failed test
    • Read a test file from fixtures
  • Assertions
    • Assert the text of a page (string or number)
    • Assert the number of elements selected
    • Assert the result of two Cypress commands
  • Actions
    • Upload a file
  • Selectors
    • Given a list, return row that contains specific text
    • Selector is flaky due to page redesigns
    • Type text into input field and press enter
    • Select element inside iframe
    • Use selector X to narrow down area, and then use selector Y to find element
  • Waits
    • Wait until a network (ie. HTTP/XHR) request resolves
    • Wait until a condition becomes true
  • Mocks
    • Force a specific response to an HTTP request

Framework review: Cypress

Photo by Herbert Goetsch on Unsplash

Fast and reliable testing for anything that runs in a browser. It uses Javascript to make setting up, writing, running and debugging tests easy — for QAs and developers.

Official website


Asserting text using Cypress

Photo by Sunyu on Unsplash
Photo by Sunyu on Unsplash

Cypress: PageObjects using inheritance


  • Your web site is deployed on several countries. The behaviour of the page you want to test (e.g. sign up) is mostly the same across countries, however some business rules change per country.
  • You are using the PageObjects pattern to encapsulate the details of each page. You want to avoid duplicated code.

Cypress Sapling (automation template)

Photo by Tzingtao Chow on Unsplash

No need to start with the seed – plant the sapling!