Publisher Summary This chapter highlights the clues and theoretical basics to explain how existing test cases can be improved and expanded and how to find the missing ones. Focusing on individual tests, improvements in test method naming, length, and simplicity are suggested. Test cases should concentrate on the typical usage of the CUT, on threshold values, and on equivalence classes. Error cases are equally important to test and the interaction of several objects must not be neglected. While it is the objective of a tester to find as many defects as possible, developers like to see their software confirmed and may thus overlook errors in their own program that they would see at a glance in other people's code. Faulty programming concepts often lead to the same errors in a test. The chapter also describes a few heuristics, ideas, and theoretical aspects to improve single unit tests and to find new test cases. One important heuristic for effective testing is to increasingly test along the boundaries of a permitted value range because these are the areas where most errors occur. This plays an essential role in many situations, such as when selecting input parameters.