Productboard Technology RadarProductboard Technology Radar

Test pyramid

Adopt

Test pyramid

The Test Pyramid is a guide to help us create a balanced testing strategy:

  • Unit Tests form the base and test the smallest parts of the code, such as functions or classes, to check if they work right by themselves. We aim to cover at least 60% of the new code with unit tests.
  • Integration Tests come next and check if different parts of the system work well together.
  • Component Tests are a step up and test individual parts or services for correct behavior, more extensively than unit tests but not as broadly as end-to-end tests.
  • End-to-End Tests are at the top of the pyramid and ensure that the entire application works as expected in real-world scenarios. We use Cypress for these tests.

The Big Idea: More tests at the bottom (Unit Tests) and fewer as we move up (End-to-End Tests) create a stable and efficient testing process that helps us catch more issues early and ensures the software works well as a whole.

📚 Resources

Testing documentation