Testing Python: Applying Unit Testing, TDD, BDD and Acceptance Testing. David Sale
Many of you have probably heard about tests, but still do not understand why you should write code that tests other code, and why you should spend time on it. However, if you imagine a large application that hundreds of developers are working on and you need to quickly release features and fix bugs, you will almost certainly not be able to do without tests, as tests begin to save both time and effort of developers, and do not miss unstable code on production. In this tutorial, you will learn about the main types of tests, including unit and acceptance tests, as well as development approaches, in which tests are written before the code.