Computer Knowledge

Software Testing and Quality Control

2,292 Questions

Software testing and quality control questions cover testing methodologies, unit testing, and defect management. These concepts are crucial for the computer knowledge sections of competitive exams. Practice these questions to understand verification and validation processes thoroughly.

Quality control typesUnit testing purposeSoftware vulnerability testingTest planning tasksLoop testing criteriaTest harness functions

Software Testing and Quality Control Questions

Multiple choice technology testing
  1. It is easy to execute.

  2. It is designed to detect faults if present.

  3. The expected outcome is specified before execution.

  4. It is unlikely to delay progress.

Reveal answer Fill a bubble to check yourself
C Correct answer
Explanation

Specifying expected outcomes before test execution is fundamental to effective testing because it enables objective pass/fail determination and prevents rationalization after seeing actual results. Without predefined expectations, testers cannot confidently judge whether a test passed or failed, making the test ineffective regardless of how easy or fast it is to run.

Multiple choice technology testing
  1. An appropriate way of deriving system tests.

  2. Only used if good requirements are not available.

  3. Only used when good requirements are available.

  4. The most appropriate way of deriving system tests.

Reveal answer Fill a bubble to check yourself
D Correct answer
Multiple choice technology testing
  1. IEEE 802.11

  2. ISO 9001

  3. BS 7925-1

  4. BS 7925-2

Reveal answer Fill a bubble to check yourself
C Correct answer
Explanation

BS 7925-1 is the British Standard for Software Component Testing Vocabulary. IEEE 802.11 is a Wi-Fi standard, ISO 9001 relates to general quality management systems, and BS 7925-2 defines the actual software component testing standards.

Multiple choice technology testing
  1. It includes the verification of designs.

  2. It states that modules are tested against user requirements.

  3. It specifies the test techniques to be used.

  4. It only models the testing phase.

Reveal answer Fill a bubble to check yourself
B Correct answer
Explanation

The V-model emphasizes that each testing level validates corresponding development artifacts against requirements. Unit testing validates modules against detailed designs, while system testing validates the integrated system against user/SRs requirements. The model includes verification throughout (not just design), does not prescribe specific test techniques, and maps the entire development lifecycle, not just testing.

Multiple choice technology testing
  1. Functions not to be tested.

  2. Environmental requirements.

  3. Analysis of Specifications.

  4. Entry and Exit criteria.

Reveal answer Fill a bubble to check yourself
C Correct answer
Explanation

Analysis of specifications is an activity performed to design test cases rather than a component of the high-level test plan document itself. The plan typically outlines scope (functions not to be tested), environments, and entry/exit criteria.

Multiple choice technology testing
  1. When the specified number of faults are found.

  2. When the test completion criteria are met.

  3. When all high and medium priority tests are complete.

  4. When all statements have been executed.

Reveal answer Fill a bubble to check yourself
B Correct answer
Explanation

Testing stops when defined test completion criteria (like coverage targets or remaining risk limits) are satisfied. Stopping after finding a fixed number of faults, executing all statements, or only prioritizing by severity does not guarantee complete or quality-aligned exit criteria.

Multiple choice technology testing
  1. Estimating test duration.

  2. Incident Management.

  3. Configuration Management.

  4. De-bugging.

Reveal answer Fill a bubble to check yourself
B Correct answer
Explanation

Incident Management (tracking and managing defects found) is least important among test management activities compared to estimating test duration, configuration management (version control), and debugging. While necessary, it's more about defect tracking than managing the test process itself. Estimation, configuration control, and debugging are more critical to test management effectiveness.

Multiple choice technology testing
  1. Metrics from previous similar projects.

  2. Discussions with the development team.

  3. Time allocated for regression testing.

  4. Both A & B.

Reveal answer Fill a bubble to check yourself
A Correct answer
Explanation

The most reliable method to estimate re-testing effort is using metrics from previous similar projects - historical data provides objective evidence of typical re-test rates. While discussions with developers (B) can provide context, they're subjective and less reliable. Regression testing time (C) is a constraint, not an estimation method. Historical metrics offer the best statistical basis for estimation.

Multiple choice technology testing
  1. Testing whether a known software fault been fixed.

  2. Executing a large number of different tests.

  3. Testing whether modifications have introduced adverse side effects.

  4. Using a test automation tool.

Reveal answer Fill a bubble to check yourself
C Correct answer
Explanation

Regression testing verifies that recent code modifications have not adversely affected existing features. Verifying a fix is confirmation testing, whereas regression testing focuses on side effects and does not strictly require automation or a large number of tests.

Multiple choice technology testing
  1. Testing the system when combined with other systems.

  2. Testing a sub-system using stubs and drivers.

  3. Testing a system with a large number of users.

  4. Combing software components and testing them in one go.

Reveal answer Fill a bubble to check yourself
A Correct answer
Explanation

Integration testing in the large refers to testing the integration of the system with external systems, APIs, or services. This is higher-level integration testing. Option B describes integration testing in the small (component-level integration using stubs/drivers). Option C describes load testing. Option D describes component integration. The key phrase 'in the large' indicates system-to-system integration.

Multiple choice technology testing
  1. Use of automated test execution tools.

  2. Testing performed by users.

  3. Testing against acceptance test criteria.

  4. Integration of system with user documentation.

Reveal answer Fill a bubble to check yourself
A Correct answer
Explanation

User Acceptance Testing is primarily manual testing performed by actual end users to verify the system meets business requirements. Automated test execution tools are NOT a characteristic of UAT. UAT involves users testing (B), testing against acceptance criteria (C), and integrating the system with user documentation (D).

Multiple choice technology testing
  1. Each test stage has a different purpose.

  2. It is easier to manage testing in stages.

  3. We can run different tests in different environments.

  4. The more stages we have, the better the testing.

Reveal answer Fill a bubble to check yourself
A Correct answer
Explanation

Testing stages (unit, integration, system, acceptance) exist because each stage serves a distinct purpose with specific objectives and focus areas. While staging does make management easier (B) and allows different environment configurations (C), these are benefits, not the primary reason. Having more stages doesn't automatically mean better testing (D is false - stages should be justified by need).

Multiple choice technology testing
  1. Regression testing

  2. Integration testing

  3. System testing

  4. User acceptance testing

Reveal answer Fill a bubble to check yourself
A Correct answer
Explanation

Regression testing involves re-running existing tests after code changes to ensure previously working functionality still works. Test capture/replay tools record manual test interactions and replay them automatically, which is ideal for regression testing where the same tests must be executed repeatedly. Integration (B), system (C), and UAT (D) testing typically involve more varied, exploratory scenarios where capture/replay is less beneficial.

Multiple choice technology testing
  1. A minimal test set that achieves 100% LCSAJ coverage will also achieve 100% branch coverage.

  2. A minimal test set that achieves 100% path coverage will also achieve 100% statement coverage.

  3. A minimal test set that achieves 100% path coverage will generally detect more faults than one that achieves 100% statement coverage.

  4. A minimal test set that achieves 100% statement coverage will generally detect more faults than one that achieves 100% branch coverage.

Reveal answer Fill a bubble to check yourself
D Correct answer
Explanation

Coverage hierarchy: statement (weakest) < branch < LCSAJ < path (strongest). Each stronger criterion subsumes weaker ones. Statement coverage doesn't guarantee branch coverage (branches may be unexecuted). Branch coverage implies statement coverage. Path coverage detects more faults than statement coverage because it exercises all decision combinations. Statement coverage does NOT detect more faults than branch coverage - branch is stronger, making D the incorrect statement.

Multiple choice technology testing
  1. The system shall be user friendly.

  2. The safety-critical parts of the system shall contain 0 faults.

  3. The response time shall be less than one second for the specified design load.

  4. The system shall be built to be portable.

Reveal answer Fill a bubble to check yourself
C Correct answer
Explanation

A requirement is testable if it can be verified through objective, measurable criteria. Option C specifies 'response time less than one second' with a clear condition ('for specified design load'), making it quantitatively verifiable. 'User friendly' (A) and 'portable' (D) are subjective without defined metrics. '0 faults' (B) is impossible to verify - proving a system has zero faults is theoretically impossible; you can only demonstrate faults exist, not their absence.