Enhancing and Evaluating Software Test Case Diversity