One of the core objectives of Python is to bring in speed of development where developers can implement functional requirements in the shortest possible time and with fewer lines of code, which is in sync and embraces popular development models such as Agile (http://en.wikipedia.org/wiki/Agile_software_development) or Extreme Programming (http://en.wikipedia.org/wiki/Extreme_programming).
But at the same time it is also important to ensure that adding new code does not break the integrity of the system. This is only possible with an efficient/effective set of automated unit test cases.
Unit testing is an important aspect of any development lifecycle. It not only involves testing the expected outcome but at the same time it also tests ...