As the number of possible tests for even simple software components is practically infinite, all software testing uses some strategy to select tests that are feasible for the available time and resources. As a result, software testing typically (but not exclusively) attempts to execute a program or application with the intent of finding software bugs (errors or other defects). The job of testing is an iterative process as when one bug is fixed, it can illuminate other, deeper bugs, or can even create new ones. 

Although testing can determine the correctness of software under the assumption of some specific hypotheses (see hierarchy of testing difficulty below), testing cannot identify all the defects within software. Instead, it furnishes a criticism or comparison that compares the state and behavior of the product against oracles—principles or mechanisms by which someone might recognize a problem. These oracles may include (but are not limited to) specifications, contracts, comparable products, past versions of the same product, inferences about intended or expected purpose, user or customer expectations, relevant standards, applicable laws, or other criteria. QUESTIONS:

Q1:
1. What is there an infinite number of?
2. What exists in infinite quantities?
3. 
Q2:
1. What do software tests find?
2. What is the purpose of software tests?
3. 
Q3:
1. Once a software bug is fixed is everything good to go?
2. Does fixing a software bug make the whole system perfect again?
3. 
Q4:
1. Why doesn't fixing a software bug make everything good to go?
2. Why isn't everything repaired by fixing a software bug?
3. 
Q5:
1. Can software testing identify all issues?
2. Can all defects be detected by software testing?
3. 
Q6:
1. What was the actual purpose of software testing?
2. What did software testing do, if not identify all defects?
3. 
Q7:
1. Are contracts a part of oracles?
2. Do oracles contain contracts?
3. 
Q8:
1. What number of things could the word oracle refer to?
2. Oracle could refer to what number of things?
3. 
Q9:
1. What was generally the purpose of software testing?
2. Why was software testing typically done?
3. 
Q10:
1. What type of process is software testing?
2. What is software testing generally like?
3. 
