of tests for same functionality • Complexity of the code to test in isolation • Open-Closed Principle / LSP • Possiblility to “mock” an object? • The needs to rewrite test for change? Tuesday, 23 October, 12
>>> hello(2, "Hello World") 'Hello WorldHello World' n must be an integer >>> hello("Hey", "Hello ") Traceback (most recent call last): ... TypeError: n must be integer By default it repeat "Hello " for n times >>> hello(3) 'Hello Hello Hello ' """ if not isinstance(n, int): raise TypeError("n must be integer") return n * greeting if __name__ == "__main__": import doctest doctest.testmod() Tuesday, 23 October, 12
Helps refactoring vs Change private code will break tests? • DB Test? • Fixtures, Setup / Tear Down • Integrate with version control Tuesday, 23 October, 12
http://googletesting.blogspot.hk/2008/08/by- miko-hevery-so-you-decided-to.html • Guide to write Testable Code http://misko.hevery.com/attachments/Guide- Writing%20Testable%20Code.pdf • Start writing test in your next project! Tuesday, 23 October, 12