Unit tests should utilize a SetUp and TearDown approach to ensure each test runs in an expected and known configuration. The TearDown function needs to ensure that all test objects and resources have been deallocated and cleanup.