CSI CSI Testing & Quality Assurance 2 — Questions and Answers
Question 1: Which technique involves testing a system with volumes of data far beyond normal operational levels to identify breaking points?
- Boundary testing
- Stress testing (Correct answer)
- Smoke testing
- Exploratory testing
Correct answer: Stress testing
Stress testing pushes a system beyond its normal capacity to identify the threshold at which it fails or degrades.
Question 2: In a continuous integration (CI) pipeline for a system integration project, automated tests should run:
- Only before major releases
- On every code commit or merge (Correct answer)
- Once per week during a maintenance window
- Only when a developer requests it
Correct answer: On every code commit or merge
CI pipelines execute automated tests on every commit to catch integration defects as early as possible.
Question 3: A regression test suite is MOST important after:
- Initial project kickoff
- Every code change or patch to a live integrated system (Correct answer)
- Initial requirements gathering
- Vendor contract signing
Correct answer: Every code change or patch to a live integrated system
Regression testing after every change ensures that new updates have not broken previously working integration functionality.
Question 4: What is 'negative testing' in the context of API integration?
- Testing with valid inputs only
- Sending invalid, malformed, or out-of-range inputs to verify the API handles errors gracefully (Correct answer)
- Disabling all API security headers
- Running tests in a non-production environment
Correct answer: Sending invalid, malformed, or out-of-range inputs to verify the API handles errors gracefully
Negative testing deliberately sends bad inputs to confirm that an API returns appropriate error codes and messages rather than crashing.
Question 5: Which metric measures the percentage of source code executed by a test suite?
- Defect density
- Mean Time to Repair (MTTR)
- Code coverage (Correct answer)
- Test case pass rate
Correct answer: Code coverage
Code coverage indicates what percentage of code paths are exercised by tests, helping identify untested areas.
Question 6: Mock objects differ from stubs in integration testing because mocks:
- Only simulate database connections
- Verify that specific interactions (method calls) occurred, not just return values (Correct answer)
- Replace entire subsystems
- Are only used in performance testing
Correct answer: Verify that specific interactions (method calls) occurred, not just return values
Mocks verify behavioral expectations — they assert that the system under test called specific methods with specific parameters.
Which technique involves testing a system with volumes of data far beyond normal operational levels to identify breaking points?