End-to-end testing on a React-Redux app

I struggled for some time around the end-to-end testing setup in my React-Redux app. I came out with some ideas and a workflow that I would like to share. Here is how it works.

As developers we only have one way to be certain that our code works, we test it. Since it’s very likely that we will make mistakes, testing comes in our help to ensure that we do not end up pushing a broken application in the hand of our users.

Thousands of blog posts has been written around unit testing React components, Redux reducers, action creators or sagas. But when I started documenting myself around automated end-to-end testing I couldn’t find a solution used by most of the people in the React community. Not that it was needed, after all there are plenty of tools and techniques generic enough to be used in multiple languages/frameworks.

In this post I am going to explain the workflow I adopted to make end-to-end tests on my React-Redux app, which in the same way, it’s actually not specific to React-Redux SPAs, but works with them.