various types of tests