Skip to main content

Philosophy

Tests​

When adding any new features to the application, we always write tests alongside our code. This may be in the form of testing:

  • the user interface interactions from the end users perspective through Cypress end to end tests.
  • the interaction from a request perspective through integration tests.
  • a single function/method in isolation with its possible inputs and outputs through unit and functional tests.
  • JavaScript code whether it be logic in a pack file or a Preact component through frontend tests.

We also encourage manual, accessibility and regression when the need arises.

We track our code coverage in each new PR using Codecov.

QA​

Whilst we do not have a dedicated QA environment, if it is essential that your branch gets tested on production before we can go live, we encourage you to either put it behind a feature flag or we can manually deploy the branch to a Forem for testing.