At Algoan, we provide tools to facilitate access to Open Banking for both end-users and our enterprise clients. Such is the importance of the reliability of these tools, ensuring their correct functioning is of paramount concern to the front-end team at Algoan.

Our user flows must work correctly and be protected from any regressions that we may unintentionally cause during development of new features and refactoring. Manually retesting each user flow that we have already developed is simply not a practice that is scalable. As our applications grow, so does the quantity of features.

We use a mixture of React Testing Library and Cypress to simulate user behaviour and to test each facet of our web UIs. Our front-end tests should be thought of as a user-application contract. They are the specification upon which we build our applications. In other words, they form a series of acceptance criteria that must be validated in order to assert that we have a working application that conforms to the product owner’s vision.

A test should act as an aid, not a hindrance. If the test is hindering productivity whilst not providing sufficient value, it should be removed, or at least modified. We employ certain simple principles to make our tests easy to read and maintain, and also to ensure that they are useful in the first place!

Our 3 tips are:

1) Test what the user does and sees
2) Choose a good name
3) Tell a story