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 packaged enterprise solutions
  1. Primary Page

  2. Secondary Page

  3. Parameter Page

  4. Local Page

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

In Pega, the interest page is another term for the primary page. It represents the clipboard page that is currently the main focus of execution or processing for a rule or activity. Secondary, parameter, and local pages serve different purposes, such as passing parameters or holding temporary helper data.

Multiple choice technology packaged enterprise solutions
  1. Use Ob-Open-By-Handle and use the LockInfoPage

  2. Run a RDB method against the database to see who holds the lock

  3. Use the tools.getLockManager().isLocked method in a java step

  4. None

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

The tools.getLockManager().isLocked() method checks lock status without attempting to acquire the lock, making it ideal for this diagnostic purpose. The other options either require acquiring locks or use inefficient database queries.

Multiple choice technology web technology
  1. Boundary value analysis

  2. Equivalence partitioning

  3. Decision table testing

  4. State transition testing

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

Equivalence partitioning is a testing technique that divides input data into groups (equivalence classes) that are expected to be processed similarly. By testing one representative from each equivalence class, you achieve input coverage. For output coverage, you analyze how different input classes map to different output classes. This technique efficiently covers both input and output domains without testing every possible value.

Multiple choice technology testing
  1. Actual results

  2. Program specification

  3. User requirements

  4. System specification

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

User Acceptance Testing (UAT) validates that the system meets user requirements and is ready for production. The best source for Expected Outcomes in UAT scripts is the User Requirements, as these define what users actually need the system to do. Program specifications and System specifications are more technical and implementation-focused. Actual results are what you observe during testing, not what you expect.

Multiple choice technology testing
  1. Found in the software; the result of an error.

  2. Departure from specified behaviour.

  3. An incorrect step, process or data definition in a computer program.

  4. A human action that produces an incorrect result.

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

A failure is a departure from specified behavior - the system doesn't do what it's supposed to do. An error is a human mistake that introduces a defect. A defect/bug is the incorrect code or data definition resulting from an error. When that defect executes, it may cause a failure (observable incorrect behavior). Option B precisely captures this definition of failure as behavioral deviation from specifications.

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

Test capture and replay facilities are most valuable for regression testing because they allow you to record test execution once and replay it automatically after code changes. This saves significant time when re-running existing tests to verify that recent modifications haven't broken existing functionality. Integration, system, and user acceptance testing typically require more manual intervention or unique test scenarios each time.

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 an internal testing phase conducted by end-user representatives or testers at the developer's site prior to release, whereas beta testing is done at the users' own locations.

Multiple choice technology testing
  1. ReTesting

  2. Confirmation Testing

  3. Regression Testing

  4. Negative Testing

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

Regression testing is defined as re-testing an already tested program after modification to discover defects introduced by changes. Confirmation testing (or re-testing) verifies that a specific defect was fixed. Negative testing uses invalid inputs to test error handling. The definition in the question exactly matches regression testing.

Multiple choice technology architecture
  1. Extreme programming

  2. Test driven development

  3. Time boxed development

  4. None of the above

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

Test-driven development (TDD) is the practice where developers write automated tests before writing the production code. The cycle repeats: write a failing test, write just enough code to pass it, refactor. This differs from Extreme Programming (which uses TDD as a practice) and simple time-boxing.

Multiple choice technology testing
  1. a) Incident resolution is the responsibility of the author of the software under test.

  2. b) Incidents may be raised against user requirements.

  3. c) Incidents require investigation and/or correction.

  4. d) Incidents are raised when expected and actual results differ.

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

To correctly answer this question, the user should understand the definition of an incident in software testing and the typical characteristics of an incident.

An incident refers to any event that occurs during the testing of software that requires further investigation, such as when the actual results differ from the expected results.

Option A: This statement is incorrect. Resolution of incidents is not the sole responsibility of the author of the software under test. Various team members, such as developers, testers, and project managers, may be involved in resolving incidents.

Option B: This statement is correct. Incidents may be raised against user requirements when there is a deviation from the expected behavior or when the system fails to meet the specified requirements.

Option C: This statement is correct. Incidents require investigation and/or correction. When an incident is raised, it must be investigated to determine its cause and corrected to ensure that the software functions as expected.

Option D: This statement is correct. Incidents are raised when expected and actual results differ. When a test case is executed, the expected results are compared to the actual results. If they differ from each other, an incident is raised.

Therefore, the correct answer is:

The Answer is: A

Multiple choice technology testing
  1. a) In a system two different failures may have different severities.

  2. b) A system is necessarily more reliable after debugging for the removal of a fault.

  3. c) A fault need not affect the reliability of a system.

  4. d) Undetected errors may lead to faults and eventually to incorrect behaviour.

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

The statement 'A system is necessarily more reliable after debugging for the removal of a fault' is false because debugging can introduce new faults, and removing one fault does not guarantee improved overall reliability. The word 'necessarily' makes this an absolute claim that is not always true in practice. Other options are valid: different failures can have different severities (A), faults in rarely-used code may not affect reliability (C), and undetected errors can cascade into faults (D).

Multiple choice technology testing
  1. a) It states that modules are tested against user requirements.

  2. b) It only models the testing phase.

  3. c) It specifies the test techniques to be used.

  4. d) It includes the verification of designs.

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

To answer this question, the user needs to know what the V-model is and its characteristics.

The V-model is a software development model that illustrates the relationship between each phase of the development life cycle and its corresponding testing phase. The model is called the V-model because it takes the shape of the letter "V".

Now, let's go through each option and explain why it is right or wrong:

A. It states that modules are tested against user requirements. This statement is incorrect. The V-model specifies that each phase of the development life cycle has a corresponding testing phase. The testing phase in the V-model is not limited to testing modules against user requirements.

B. It only models the testing phase. This statement is incorrect. The V-model models the entire software development life cycle, including requirements gathering, design, coding, and testing.

C. It specifies the test techniques to be used. This statement is incorrect. While the V-model provides guidance on the testing phase, it does not specify the exact test techniques to be used.

D. It includes the verification of designs. This statement is correct. The V-model includes the verification of designs as part of the development life cycle. The model specifies that testing should start at the beginning of the development life cycle, with the verification of requirements, and continue through the design, coding, and testing phases.

Therefore, the answer is: D.

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

  2. b) It is easier to manage testing in stages.

  3. c) We can run different tests in different environments

  4. d) 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) each serve distinct purposes - unit tests verify individual components, integration tests check interfaces, system tests validate requirements, and acceptance testing confirms user needs. While staging does aid management (B) and enable different environments (C), these are secondary benefits. Option D is incorrect - more stages don't automatically mean better testing.

Multiple choice technology testing
  1. a) Regression testing

  2. b) Integration testing

  3. c) System testing

  4. d) User acceptance testing

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

Regression testing involves re-running previously executed tests to verify that recent code changes haven't adversely affected existing functionality. Test capture/replay tools excel here by recording test inputs and outputs, then automatically replaying them after modifications. Integration, system, and UAT testing focus more on new functionality or system-wide validation rather than repetitive re-execution of existing tests.