Modern software development involves quite a bit more than classes and
functions. To provide quality assurance, code should be tested, which is often a
repetitive task and well suited to automation. Given a test suite, it should be
run every time before merging code into a development branch to ensure