In the previous chapter, we extended what you can do to test your standalone app by testing against different versions of Python and Django, as well as alternative test runners. You learned how to use tox or nox to test against different versions and how to test your migrations and got a brief introduction to the pytest testing framework.
In this chapter, we’ll look at how to go beyond this by automating as much as possible, not merely for our convenience but also to help improve the quality of our app and the shared experience for other contributing developers.
What is it and why bother?
There are a number ...