Testing Mid Exam
Q1. Which of the following is true about acceptance testing?
A. It is a unit testing approach
B. It is performed by the testers of the customers
C. It can be viewed as a system testing
D. All of the above
E. B + C
F. A + C
Q2. Destructive Testing Techniques
A. Tester peer review
B. Failure point analysis
C. Ad-hock testing
D. Performance testing
E. A + B
F. C + D
Q3. Test Scaffolding is:
A. A source for generating test cases from code
B. A code developed to facilitate testing
C. A function that is used to execute tests automatically
D. A performance-testing technique
Q4. Testing the connection between units and components is:
A. Integration Testing
B. Regression Testing
C. Soak Testing
D. System Testing
Q5. In TDD, what should be performed first?
A. Writing production code
B. Code refactoring
C. Writing test code
D. None of the above
Q6. One of the disadvantages of Agile Testing methodology is that it considers
the Confused-user path, which is:
A. Use the software in an unexpected way accidentally
B. Make mistakes during data entry willfully
C. Intentionally cause harm or gain unauthorized access
D. None of the above
Q7. Test Oracle is:
A. A source for generating test cases from code
B. A function that is used to execute tests automatically
C. A way to provide a program with the needed input as per the test
D. A function that determines if the results of testing a program are correct
E. An error-guessing technique
Q8. In Agile methodologies, tests should be run:
A. After completing development phase
B. After each code change
C. Every two weeks
D. None of the above
Q9. Black-box testing characteristics include:
A. Has access to code to drive test cases
B. Code structure used to derive test inputs
C. Specifications are used to derive test inputs
D. The internal structure is partially known
Q10. Which of the following is NOT a good practice for writing test cases?
A. Writing test cases that are easy to understand and maintain
B. Testing only the happy path scenarios and ignoring the unhappy path scenarios
C. Testing a wide range of input values and conditions
D. Using descriptive names for test cases and test steps
Q11. Why do we need testing?
A. An effective way to show the absence of bugs
B. Provide some confidence that the software is functional, dependable, and
meets quality requirements
C. Provide complete confidence that the software is functional, dependable, and
meets quality requirements
D. An inadequate way to show the presence of bugs
Q12. A testing technique conducted to understand the behavior of the system
under a specific load:
A. Load Testing
B. Stress Testing
C. Soak Testing
D. Smoke Testing
Q13. Which of the following is/are Agile Testing principle(s)?
A. Testing is not considered a separate phase
B. Shortening Feedback Response Time
C. Reducing Task Documentation
D. All of the above
Q14. Which of the following is a Performance testing technique?
A. Load Testing
B. Stress Testing
C. Soak Testing
D. All of the above
Q15. Which of the following testing approaches is used to measure the
reliability of the software?
A. Spike Testing
B. Soak Testing
C. Stress Testing
D. Destructive Testing
Sort answer questions:
1. What is a static defect in the software called?
2. What is the testing approach that is used to decide if a build is stable
enough to proceed with further testing based on main functionalities?
3. Software Testability is dominated by two practical problems, list them.
4. What is the determination that a program is consistent with its
requirements (goals) called?
Section 4 [10 pts.] The following code listing shows a method that finds if an element
is in an integer array searching backwards and returns its index, or a -1 otherwise.
Followed by a list of possible test cases. This method has a defect. Based on this
information, answer questions 1 to 6.
1. These are a list of selected test cases. Complete them by completing the table:
Test case ID Test input Expected output Actual output
1 [], 0
2 [1, 2, 3, 4], null
3 [1, 2, 3, 4], 4
4 [1, 2, 3, 4], 1
5 [1, 2, 3, 4], 5
2. For the above code, which line has a fault?
3. If possible, which test case ID(s) does not reach the fault?
4. If possible, which test case ID(s) does reach the fault but does not cause an error?
5. If possible, which test case ID(s) does reach the fault and cause an error without
failure?
6. If possible, which test case ID(s) does reach the fault and cause an error and a failure?