Redux allows you to deals with the complexity of data within your application. In ReactJS this might be some computational data or data from a third party, like an API.
Testing ensures the application is functioning correctly and allows you to be able to find bugs within the application before it goes into production.