Book Image

Mastering Object-oriented Python

By : Steven F. Lott, Steven F. Lott
Book Image

Mastering Object-oriented Python

By: Steven F. Lott, Steven F. Lott

Overview of this book

Table of Contents (26 chapters)
Mastering Object-oriented Python
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Some Preliminaries
Index

The TestCase class hierarchy


Inheritance works among the TestCase classes. Ideally, each TestCase is unique. Pragmatically, there may be common features among cases. There are three common ways in which TestCase classes may overlap:

  • Common setUp(): We may have some data that is used in multiple TestCases. There's no reason to repeat the data. A TestCase class that only defines setUp() or tearDown() with no test methods is legal, but it may lead to a confusing log because there are zero tests involved.

  • Common tearDown(): It's common to have a common cleanup for tests that involve OS resources. We might need to remove files and directories or kill subprocesses.

  • Common results checking: For algorithmically complex tests, we may have a results checking method that verifies some properties of a result.

Looking back at Chapter 3, Attribute Access, Properties, and Descriptors, for example, consider the RateTimeDistance class. This class fills in a missing value in a dictionary based on two other...