Skip to content

Testing

Jonathan Flynn edited this page May 13, 2022 · 7 revisions

Cypress

End to end testing was added in this PR: https://github.com/guardian/manage-frontend/pull/790. The description of the PR states the benefits of using Cypress and the current state of how we are mocking data and application state.

Running Cypress tests via actions and locally

The steps to run these tests correctly are defined in the yml file: https://github.com/guardian/manage-frontend/blob/main/.github/workflows/cypress.yml

  1. Run yarn cypress:server (this bypasses the Identity Gateway)
  2. Run yarn cypress:open to test visually locally, or run yarn cypress:run to run tests with command line coverage

Cypress tips

  • cy.getByText() fails if it can't find anything whereas cy.findByText() queries the DOM, but won't fail the test if nothing is found. Adding an extra function like .should('exist') is therefore necessary.
  • Use cy.get('@api_call.all').should('have.length', 1); to determine how many times an endpoint was called during a test run.
Clone this wiki locally