A good test case is neither too small nor too big. A good test case stands alone, sets up pre-test conditions, exercises the application under test (AUT), verifies one thing, reports the results of the verification, then if applicable, cleans up (usually data) and reports the overall test case result; pass or fail.