Computer Knowledge

Software Testing and Quality Control

2,598 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. 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.

Multiple choice technology testing
  1. The test object, the test material and the test environment

  2. The problem reports and the test material

  3. Only the test object. The test cases need to be adapted during agile testing

  4. The test object and the test material

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

Configuration management should control all items that affect test execution and results reproducibility. Option A is correct because it includes: (1) the test object (system under test), (2) test material (test cases, test data, scripts), and (3) test environment (hardware, software, network). If any of these change without control, tests may produce different results. Option B misses the test object and environment. Option C incorrectly excludes test material from configuration control. Option D misses the critical test environment. Complete traceability requires controlling all three elements.

Multiple choice technology testing
  1. Because the tools for automated testing require too much effort for learning

  2. Because the maintenance of the test system is difficult

  3. Because the test robot tools are restricted in their ability to recognize outputs

  4. Because the test robot needs to be supported by a test management.

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

Automating test execution is challenging mainly because maintaining the test environment, scripts, and data over time is labor‑intensive. The other options cite tool learning effort or output recognition limits, which are less central to the difficulty.

Multiple choice technology testing
  1. 1000, 5000, 99999

  2. 9999, 50000, 100000

  3. 10000, 50000, 99999

  4. 10000, 99999

  5. 9999, 10000, 50000, 99999, 10000

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

To solve this question, the user needs to know about equivalence classes and boundary testing. Equivalence partitioning is a software testing technique that divides the input data of a software unit into different partitions of valid and invalid data. The purpose of this is to reduce the number of test cases needed to test the software while increasing the effectiveness of the tests. Boundary testing is a software testing technique that checks whether the input data to a software system is at its minimum or maximum limits.

In this question, the valid equivalence classes are numbers between 10000 and 99999 inclusive. The valid boundaries are 10000 and 99999.

Let's go through each option and see which inputs are a result of designing tests for only valid equivalence classes and valid boundaries:

A. 1000, 5000, 99999: Option A includes invalid equivalence classes and is not a result of designing tests for only valid equivalence classes.

B. 9999, 50000, 100000: Option B includes an invalid boundary (100000) and is not a result of designing tests for only valid boundaries.

C. 10000, 50000, 99999: Option C includes valid equivalence classes and valid boundaries. It includes the minimum and maximum values of the valid equivalence classes.

D. 10000, 99999: Option D includes valid boundaries but only one valid equivalence class. It does not include other valid equivalence classes between 10000 and 99999.

E. 9999, 10000, 50000, 99999, 10000: Option E includes invalid equivalence classes (9999 and 10000) and duplicate input (10000). It is not a result of designing tests for only valid equivalence classes and valid boundaries.

Therefore, the correct answer is:

The Answer is: C

Multiple choice technology testing
  1. Post-release testing by end user representatives at the developer’s site.

  2. The first testing that is performed.

  3. Pre-release testing by end user representatives at the developer’s site.

  4. Pre-release testing by end user representatives at their sites.

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

Alpha testing is conducted before release and typically involves a limited set of end‑user representatives working at the developer’s site. This matches the definition of pre‑release testing by end users at the developer’s location, making the selected option correct.