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. Data tester

  2. Boundary tester

  3. Capture/Playback

  4. Output comparator

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

Capture/Playback tools record user interactions with the software and automatically replay them to verify that existing functionality still works correctly after changes. This makes them particularly valuable for regression testing, where the same test cases need to be executed repeatedly across multiple software builds. Other options like Data tester, Boundary tester, and Output comparator serve different testing purposes and are not primarily designed for test automation.

Multiple choice technology testing
  1. Stub

  2. Driver

  3. Proxy

  4. None of the above

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

A driver is a software component or test harness used in bottom-up integration testing to call the target function with test data and receive its output. Conversely, a stub is a dummy implementation called by the code under test to simulate lower-level dependencies.

Multiple choice technology testing
  1. Error condition hiding another error condition

  2. Creating a test case which does not reveal a fault

  3. Masking a fault by developer

  4. Masking a fault by a tester

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

To understand this question, the user needs to know the basic concept of software testing. Fault masking is a technique used in software testing to hide one fault by another one, which makes it difficult to identify the original fault.

Now, let's go through each option:

A. Error condition hiding another error condition: This option correctly defines fault masking. It means that one error condition is hiding another one.

B. Creating a test case which does not reveal a fault: This option is incorrect. It defines a technique called "passive testing," where the tester creates a test case that does not reveal any faults. It is not related to fault masking.

C. Masking a fault by developer: This option is incorrect. Developers write code to fix faults, not mask them.

D. Masking a fault by a tester: This option is incorrect. Testers are responsible for identifying faults, not masking them.

Therefore, the correct answer is: A. Error condition hiding another error condition.

Multiple choice technology testing
  1. Lack of technical documentation

  2. Lack of test tools on the market for developers

  3. Lack of training

  4. Lack of Objectivity

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

Developers struggle to test their own work primarily because of lack of objectivity - they are biased by their knowledge of how the code 'should' work and may unconsciously avoid test cases that would reveal their own mistakes. This psychological phenomenon makes it difficult to mentally step back and approach the testing process critically. While documentation, tools, and training can help, the fundamental barrier is the developer's emotional and cognitive investment in their own code being correct.

Multiple choice technology testing
  1. When the code is complete

  2. When the design is complete

  3. When the software requirements have been approved

  4. When the first code module is ready for unit testing

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

The test process can begin as soon as the software requirements have been approved, before any code is written. Test planning and test case design activities can start during requirements analysis to ensure testability of requirements and early identification of test scenarios. This early testing approach helps detect defects at the requirements stage itself, when they are cheapest to fix. Waiting until code completion or design completion delays these critical testing activities and violates the principle of early testing.

Multiple choice technology
  1. Testers

  2. Developers

  3. Business users

  4. All the above

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

Staging instances in application deployment are typically used by business users for user acceptance testing (UAT) before production deployment. Developers use development environments, while testers use dedicated QA environments. The staging environment closely mirrors production to validate business requirements.

Multiple choice technology
  1. Production

  2. Testing

  3. Staging

  4. Development

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

In application deployment lifecycles, Production is always the final instance where the live application runs. The progression is typically Development → Testing → Staging → Production, with Production being the last and most critical environment.

Multiple choice technology testing
  1. Test Driven Development methodology aimed at building higher-quality systems, with faster return on investment.

  2. Test Driven Testing methodology aimed at building higher-quality systems, with faster return on investment.

  3. both

  4. None of the above

Reveal answer Fill a bubble to check yourself
A Correct answer
Multiple choice technology testing
  1. XP (extreme Programming)

  2. Scrum

  3. DSDM

  4. Water-fall

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

XP (Extreme Programming), Scrum, and DSDM are all Agile methodologies. Waterfall is a traditional predictive methodology following a sequential phase-based approach (requirements → design → implementation → testing → deployment), making it the non-Agile option listed.

Multiple choice technology testing
  1. True

  2. False

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

Agile development is characterized by iterative development in short cycles (sprints), delivering incremental releases of working software. Each iteration includes testing, though the claim that 'all issues are addressed in the next iteration' is overstated - Agile manages backlog continuously rather than guaranteeing zero carryover issues. The core description is accurate.

Multiple choice technology testing
  1. Daily

  2. Twice a day

  3. Weekly

  4. Twice a week

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

To answer this question, the user needs to have an understanding of Scrum methodology. Scrum is an Agile framework for managing and completing complex projects. It is iterative and incremental and is suitable for projects that require flexibility and adaptability. One of the key events in Scrum is the Daily Scrum or Daily Stand-up.

The Daily Scrum is a timeboxed event of 15 minutes or less, in which the Development Team plans work for the next 24 hours and inspects progress. This meeting is held every day at the same time and place for the duration of the Sprint.

Therefore, the correct answer is:

The Answer is: A. Daily

Multiple choice technology testing
  1. Product owner

  2. scrum master

  3. Product manager

  4. Srum team

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

The Scrum Guide defines only three official roles: the Product Owner, the Scrum Master, and the Developers (or Scrum Team). While a Product Manager is a traditional business role that often collaborates with Scrum teams or acts as a Product Owner, it is not an official Scrum role.

Multiple choice technology testing
  1. Sprint Review meeting

  2. Product Review meeting

  3. Stakeholder meeting

  4. Sprint Retrospective meeting

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

The Sprint Review is held at the end of each Sprint to inspect the increment and adapt the Product Backlog. During this meeting, the Scrum Team presents the work completed to stakeholders including the Product Owner.