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. All the below

  2. a way of empowering people in the organization

  3. the analysis performed by executing the program code

  4. a powerful way of expressing yourself to make your presence felt

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

Dynamic assertions analyze program behavior during actual execution, testing runtime conditions, variable states, and control flow. This contrasts with static analysis, which examines code without running it. Dynamic analysis validates what the code does, not just its structure.

Multiple choice technology testing
  1. All of the following

  2. Activities involved

  3. Users/Customer served

  4. Deficiencies noted

  5. Procedure used to perform work

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

Complete test deviation documentation requires capturing the full context: activities performed (what was done), users/customers affected (who experienced it), deficiencies found (what went wrong), and procedures used (how it was done). This ensures reproducibility and traceability.

Multiple choice technology testing
  1. It can help identify error-prone parts of the process

  2. It cannot be applied; there is no normal variation in software

  3. It cannot be used to identify similar types of failures

  4. It cannot be applied; software failure expose the root cause directly

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

Root cause analysis (RCA) in software development focuses on identifying systemic weaknesses or error-prone stages in the process (like requirements gathering or coding phases) to prevent defects, rather than assuming software failures are unresolvable or self-evident.

Multiple choice technology testing
  1. Developers are not as careful as testers

  2. Developers are generally not willing to put in the effort required to find faults in their

  3. No-one can adequately test their own work

  4. An independent person may find faults more quickly.

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

Independent testing prevents cognitive bias where developers unconsciously avoid test cases that might reveal faults in their own work. The psychological attachment to one's code creates blind spots - you see what you intended to write, not what actually exists. Option A is incorrect about developer care; option B oversimplifies motivation; option D describes a potential benefit but not the fundamental reason.

Multiple choice technology testing
  1. We cannot run the test

  2. It may be difficult to repeat the test

  3. It may be difficult to determine if the test has passed or failed

  4. We cannot automate the user inputs

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

Expected results define the pass/fail criteria for a test. Without them, we have no objective basis to judge whether the actual behavior matches requirements, even if we can execute the test inputs and observe outputs. This makes it impossible to determine whether the test passed or failed.

Multiple choice technology testing
  1. 2 is a valid reason; 1,3,4 & 5 are not

  2. 1,2,3,4 are valid reasons; 5 is not

  3. 1,2,3 are valid reasons; 4 & 5 are not

  4. All of them are valid reasons for failure

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

Failures can originate from errors anywhere in the software lifecycle, including testing execution, the software code, the design, environmental variables, or incorrect documentation. Therefore, all options listed are valid reasons for a system failure.

Multiple choice technology testing
  1. Execution

  2. Design

  3. Planning

  4. Check Exit criteria completion

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

Detecting faults during the planning phase is highly cost-effective because requirements and design issues can be resolved on paper before any code is written. Fixing defects later during design, execution, or exit criteria validation requires expensive code rework, regression testing, and redeployment cycles.

Multiple choice technology testing
  1. Monitoring progress of tests runs

  2. Identifying test activities

  3. Planning for rework and retest cycle

  4. Estimating total effort to report faults

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

Test estimation is a planning activity that occurs before test execution, involving forecasting resources, schedules, and scope. Monitoring test progress happens during execution and control, which is after estimation. Options B, C, and D are all valid estimation activities (identifying tasks, planning rework cycles, estimating defect reporting effort).

Multiple choice technology testing
  1. Report on deviations form the project plan

  2. Sign the system off for the release

  3. Raise incidents on faults that they have found

  4. Provide information for risk analysis and quality improvement

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

Test managers coordinate testing but should not unilaterally approve releases. Sign-off requires broader stakeholder involvement including business owners and project managers to avoid conflicts of interest and ensure adequate testing. Options A, C, and D are appropriate test manager responsibilities for transparency and quality improvement.

Multiple choice technology testing
  1. an error

  2. a fault

  3. a failure

  4. a defect

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

A failure is the observable incorrect behavior that occurs during system execution - what end-users actually see when the software doesn't work as expected. A fault or defect is the bug in the code that causes the failure. An error is the human mistake that leads to the fault. The key distinction: fault is in the code, failure is what the user experiences.

Multiple choice technology testing
  1. requirements

  2. documentation

  3. testcases

  4. improvements suggested by users

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

Incidents are formal reports of defects or failures in the software system that require investigation and resolution. Requirements, documentation, and test cases can all have incidents raised against them if they contain errors, ambiguities, or issues. However, user suggestions for improvements are enhancement requests or feature requests, not incidents - they don't represent a deviation from expected behavior.

Multiple choice technology testing
  1. Poor quality software

  2. Poor software and poor testing

  3. bad luck

  4. insufficient time for testing

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

When users find faults after release, it indicates both that the software had bugs (poor quality) AND that the testing process failed to catch them (poor testing). If testing were thorough, users wouldn't discover these faults. Option A blames only the software; Option D blames only time constraints. The reality is both software quality and testing effectiveness were inadequate.

Multiple choice technology testing
  1. to show that system will work after release

  2. to decide when the software is of sufficient quality to release

  3. to find as many bugs as possible before release

  4. to give information for a risk based decision about release

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

Testing provides information to stakeholders about the quality of the software, including known defects, risks, and test coverage. This information supports a risk-based decision about whether the software is ready for release. Testing cannot guarantee the system will work (A), doesn't directly decide when to release (B), and while finding bugs (C) is important, it's not the MAIN purpose - the information gathered enables informed release decisions.

Multiple choice technology testing
  1. Faults in program specifications are the most expensive to fix

  2. Faults in code are the most expensive to fix.

  3. Faults in requirements are the most expensive to fix

  4. Faults in designs are the most expensive to fix

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

Requirements defects are the most expensive to fix overall because they affect everything downstream - design, code, testing, documentation, and user experience. A single requirement error can invalidate entire features, requiring rework across multiple phases. While design and coding defects are also costly, they're usually more localized. The earlier a defect is found in the lifecycle, the cheaper it is to fix; requirements defects found late are exponentially more expensive.

Multiple choice technology programming languages
  1. Code Logic

  2. Code Coverage

  3. Memory leaks

  4. All of the above

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

Running testdrv -p executes a full diagnostic check on test units, verifying the code logic, measuring overall code coverage, and identifying potential memory leaks. Because the testing framework validates all three criteria during this parameter execution, selecting all of the above is the correct choice.