The Two Sides of Software Testing: Checking and Exploring