Chapter 7. Backend Testing
At this point in the project, you’ve got quite a bit of code. There are services, controllers, and integrations. While you and the team will do your best to not introduce code regressions (where previously working functionality is broken from an unrelated change), that will happen at some point, and it’s normal as the code grows. That’s why you write tests for the major functionality of the app.
On the backend, you’ll test for things like errors being called in the correct scenarios, data being returned in the correct format, and the correct methods being called with the correct parameters. Writing unit tests like these will help keep you from making regressions, understand the way the code should work, and make the code maintainable because you are writing more concise, modular code.
In this chapter, I’ll cover:
-
Trade-offs between having tests and not having them
-
How to write tests using Jest
-
The importance of mock data
Regardless of whether you are starting a project from scratch or inheriting one, tests can be a great help. This is also a great time to collaborate with the Product team on the current and future state of the product. Writing tests will often bring up more detailed questions about exactly what is expected from some functionality.
Why Spend the Time on Tests
You’ll find that developers have differing views on how tests should be implemented. Some strong opinions can come up here because, just like with everything else, there ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access