Chapter 9: Testing Our Application Endpoints and Components
Our to-do Rust application now fully works. We are happy with our first version as it manages authentication, different users and their to-do lists, and logs our processes for inspection. However, a web developer's job is never done.
While we have now come to the end of adding features to our application, we know that the journey does not stop here. In future iterations beyond this book, we may want to add teams, new statuses, multiple lists per user, and so on. However, as we add these features, we have to ensure that our old application behavior stays the same unless we actively change it. This is done by building tests.
In this chapter, we'll build tests that check our existing behavior, laying down traps that will throw errors that report to us if the behavior changes without us actively changing it. This prevents us from breaking the application and pushing it to a server after adding a new feature or...