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. Checking that we are building the right system

  2. Checking that we are building the system right

  3. Performed by an independent test team

  4. Making sure that it is what the user really wants

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

Verification checks that the product is built correctly according to specifications—"building the system right". It is not about building the right system (validation), nor is it defined by who performs it, making the other options inaccurate.

Multiple choice technology testing
  1. As the first approach to deriving test cases

  2. After more formal techniques have been applied

  3. By inexperienced testers

  4. After the system has gone live

  5. Only by end users

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

Error guessing is applied after formal techniques such as boundary value analysis or equivalence partitioning have been used, because it relies on tester intuition to uncover hidden defects. It is not the first approach, nor is it limited to inexperienced testers, post‑production use, or end‑user activities, which makes those options incorrect.

Multiple choice technology testing
  1. As there are many different ways to test software, thought must be given to decide what will be the most effective way to test the project on hand.

  2. Starting testing without prior planning leads to chaotic and inefficient test project

  3. A strategy is needed to inform the project management how the test team will schedule the test-cycles

  4. Software failure may cause loss of money, time, business reputation, and in extreme cases injury and death. It is therefore critical to have a proper test strategy in place.

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

A test strategy provides a structured approach to testing that ensures comprehensive coverage and risk mitigation. Option D is most correct because it emphasizes the critical business impact and potential consequences of software failure - including financial loss, reputational damage, and safety risks. While options A, B, and C describe valid benefits of test planning, option D addresses the fundamental reason testing exists: to prevent serious negative outcomes. A proper test strategy aligns testing effort with business risk and provides stakeholder confidence in system reliability.

Multiple choice technology testing
  1. Component testing should be performed by development

  2. Component testing is also know as isolation or module testing

  3. Component testing should have completion criteria planned

  4. Component testing does not involve regression testing

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

The statement that component testing does not involve regression testing is false. Regression testing can and should occur at the component level when changes are made to a unit or module. After fixing a defect during component testing, re-running related tests ensures the fix hasn't broken other functionality within that component. Component testing (also called unit or module testing) is typically performed by developers, should have planned completion criteria, and includes both new testing and regression testing for maintained code.

Multiple choice technology testing
  1. As soon as the code is written

  2. During the design stage

  3. When the requirements have been formally documented

  4. As soon as possible in the development life cycle

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

Testing activities should begin as early as possible in the development lifecycle to catch defects early, aligning with the chosen answer. The other timings are either too late or impractical.

Multiple choice technology testing
  1. Because testing is good method to make there are not defects in the software

  2. Because verification and validation are not enough to get to know the quality of the software

  3. Because testing measures the quality of the software system and helps to increase the quality

  4. Because testing finds more defects than reviews and inspections.

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

Testing provides measurable quality information and helps improve software quality, which is why it is necessary. The selected statement reflects this purpose accurately.

Multiple choice technology testing
  1. Black box testing is when we do not have knowledge of testing and in white box testing we have knowledge of testing.

  2. Black box testing is when we do not know the functionality and in white box testing we know the functionality.

  3. Black box testing is when we do not know code used and in white box testing we know the code used.

  4. Black box testing is when we test application randomly and in white box testing we test application using proper test strategy.

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

Black‑box testing ignores the internal code, while white‑box testing uses knowledge of the source code. The chosen option accurately captures this distinction, making it correct.

Multiple choice technology testing
  1. Testing that the system functions with other systems

  2. Testing that the components that comprise the system function together

  3. Testing the end to end functionality of the system as a whole

  4. Testing the system performs functions within specified response times

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

Functional system testing verifies that the system's components work together correctly when integrated. Option B is correct because it focuses on the collaborative functioning of system components. Option A describes system integration testing (testing with external systems). Option C describes end-to-end testing which is broader than component interaction. Option D describes non-functional testing (performance testing). Functional system testing specifically validates that the functional requirements are met through proper interaction between components that comprise the system.

Multiple choice technology testing
  1. Re-testing ensures the original fault has been removed; regression testing looks for unexpected side-effects

  2. Re-testing looks for unexpected side-effects; regression testing ensures the original fault has been removed

  3. Re-testing is done after faults are fixed; regression testing is done earlier

  4. Re-testing is done by developers; regression testing is done by independent testers

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

Re-testing (confirmation testing) specifically checks that the reported defect has been fixed - it reruns the failed test case after the fix. Regression testing looks for unintended side-effects - it checks whether the fix has broken other previously working parts of the system. They serve different purposes: re-testing validates the fix worked; regression testing ensures no new defects were introduced. Option A correctly captures this distinction. Options C and D incorrectly attribute timing or personnel differences that aren't inherent to these concepts.

Multiple choice technology testing
  1. All the planned tests have been run

  2. Time has run out

  3. All faults have been fixed correctly

  4. Both 1 and 3

  5. It depends on the risks for the system being tested

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

The decision to stop testing depends on risk assessment; it isn’t solely based on time, completed tests, or fixed faults. Therefore, the risk‑based option is the correct choice.

Multiple choice technology testing
  1. Parallel testing is a type of testing where the tester reconciles the output of the new system to the output of the current system, in order to verify the new system operates correctly.

  2. Two people testing an application on same machine.

  3. Testing one functionality simultaneously on two different machine having same hardware configuration.

  4. Testing two different functionality simultaneously.

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

Parallel testing compares the output of a new system against the current system’s output to verify correctness, which is exactly the definition provided. The other choices describe unrelated concepts, so the marked answer is correct.

Multiple choice technology testing
  1. Interoperability (compatibility) testing, reliability testing, performance testing

  2. System testing, performance testing

  3. Load testing, stress testing, component testing, portability testing

  4. Testing various configurations, beta testing, load testing

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

To solve this question, the user needs to understand the difference between functional and non-functional testing. Functional tests evaluate the behavior of a system or component against the specifications, while non-functional tests evaluate the non-behavioral aspects of a system or component such as its performance, reliability, and usability.

Now, let's go through each option and determine which ones contain only non-functional tests:

A. Interoperability (compatibility) testing, reliability testing, performance testing: This option contains both functional and non-functional tests. Interoperability and compatibility testing is a type of functional testing, while reliability and performance testing are non-functional tests.

B. System testing, performance testing: This option contains both functional and non-functional tests. System testing is a type of functional testing, while performance testing is a non-functional test.

C. Load testing, stress testing, component testing, portability testing: This option contains only non-functional tests. Load testing and stress testing are non-functional tests that evaluate the performance of a system under different loads and stress levels. Component testing is a type of functional testing that evaluates the behavior of individual components, but portability testing is a non-functional test that evaluates the ability of a system to run on different hardware and software platforms.

D. Testing various configurations, beta testing, load testing: This option contains both functional and non-functional tests. Testing various configurations and beta testing are types of functional testing, while load testing is a non-functional test.

Therefore, the answer is: C. Load testing, stress testing, component testing, portability testing.

Multiple choice technology testing
  1. Number of detected defects, testing cost

  2. Number of residual defects in the test object.

  3. Percentage of completed tasks in the preparation of test environment; test cases prepared

  4. Number of test cases run / not run; test cases passed / failed

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

Test execution monitoring requires metrics that show testing progress and results in real-time. Option D is correct because test cases run/not run and passed/failed are direct execution metrics that indicate: what portion of planned testing is complete, and what portion of executed tests passed. These metrics help track progress, identify blockages, and assess product quality during execution. Options A, B, and C describe useful metrics but they're either post-execution (residual defects), planning-phase metrics (test case preparation), or cost tracking rather than execution monitoring.

Multiple choice technology testing
  1. State transition testing, code testing, agile testing

  2. Equivalence partitioning, state transition testing, decision table testing

  3. System testing, acceptance testing, equivalence partitioning

  4. System integration testing, system testing, decision table testing

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

Black box testing techniques design tests based solely on inputs and expected outputs, without knowledge of internal code structure. Option B is correct because equivalence partitioning, state transition testing, and decision table testing are all black box techniques - they analyze external behavior. Options A, C, and D incorrectly mix in white box techniques (code testing) or test levels/types (system testing, integration testing, acceptance testing) which describe when testing occurs rather than how tests are designed. Black box focuses on what the system does rather than how it's implemented.