Introduction to the formal treatment of testing