Software Testing Software Testing 2 — Questions and Answers
Question 1: Which testing technique involves testing without knowledge of the internal code structure?
- White-box testing
- Black-box testing (Correct answer)
- Grey-box testing
- Structural testing
Correct answer: Black-box testing
Black-box testing evaluates software functionality without any knowledge of internal implementation or code structure.
Question 2: What is the purpose of a test oracle in software testing?
- To generate test cases automatically
- To determine whether a test passed or failed (Correct answer)
- To manage test execution schedules
- To track defect severity levels
Correct answer: To determine whether a test passed or failed
A test oracle is a mechanism that determines whether the actual output of a test matches the expected output, confirming pass or fail.
Question 3: Which type of testing verifies that a system meets the requirements specified by the customer?
- Unit testing
- Integration testing
- Acceptance testing (Correct answer)
- Regression testing
Correct answer: Acceptance testing
Acceptance testing validates that the system satisfies business requirements and is acceptable for delivery to the customer.
Question 4: What does 'test coverage' measure in software testing?
- The number of bugs found per test case
- The proportion of the software tested by the test suite (Correct answer)
- The time taken to execute all tests
- The cost of running the test suite
Correct answer: The proportion of the software tested by the test suite
Test coverage measures how much of the software (code, requirements, or functionality) is exercised by the existing test suite.
Question 5: Which technique divides input data into groups where all values are expected to behave similarly?
- Boundary value analysis
- Equivalence partitioning (Correct answer)
- Decision table testing
- State transition testing
Correct answer: Equivalence partitioning
Equivalence partitioning groups inputs into classes where all members are expected to be processed the same way, reducing the number of test cases needed.
Question 6: What is a 'smoke test' in software testing?
- A test that checks hardware temperature limits
- A quick sanity check to verify basic functionality works before deeper testing (Correct answer)
- A performance test under maximum load
- A test that destroys the application intentionally
Correct answer: A quick sanity check to verify basic functionality works before deeper testing
A smoke test is a shallow, broad test that verifies the most critical functions of a build work before investing in more thorough testing.
Question 7: In software testing, what is 'defect clustering'?
- Grouping defects by their severity level
- The observation that most defects are concentrated in a few modules (Correct answer)
- Creating clusters of related test cases
- Assigning defects to specific test teams
Correct answer: The observation that most defects are concentrated in a few modules
Defect clustering is a testing principle (Pareto principle) stating that a small number of modules tend to contain the majority of defects.
Which testing technique involves testing without knowledge of the internal code structure?