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. Unit testing

  2. Systems testing

  3. Stress testing

  4. User Acceptance Testing

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

The testing sequence is: Unit → Integration → System → Acceptance. Integration testing combines multiple units, so unit testing MUST be completed first. System testing, stress testing, and UAT come AFTER integration testing, not before.

Multiple choice technology testing
  1. System

  2. Unit

  3. Integration

  4. Acceptance

  5. All of the above

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

The four main types of testing are Unit, Integration, System, and Acceptance testing. These form the standard V-model testing hierarchy. Since all four types listed are correct, 'All of the above' is the right answer.

Multiple choice technology testing
  1. Identifying defects.

  2. fixing defects

  3. Both 1 and 2

  4. None

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

Reviews (static testing), static analysis (code analysis), and dynamic testing (running tests) all share the primary objective of identifying defects in software. None of these activities directly fix defects - fixing is a separate remediation activity after detection.

Multiple choice technology testing
  1. Test manager

  2. Test engineer

  3. Both A & B

  4. Project Manager

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

Test Readiness Review (TRR) is conducted by the Test Manager to ensure test artifacts are complete, requirements are traceable, and the test environment is ready before testing commences. Test engineers participate but the Test Manager is responsible for conducting it.

Multiple choice technology testing
  1. ) Integration Level Test Cases

  2. User Acceptance Test Cases

  3. Unit Level Test Cases

  4. Program specifications

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

Requirements specifications serve as input for User Acceptance Test (UAT) cases. UAT validates that the system meets user requirements as specified. Unit tests use code/design specs, integration tests use design specs, and UAT focuses on requirement validation.

Multiple choice technology testing
  1. Component testing

  2. Non-functional system testing

  3. User acceptance testing

  4. Maintenance testing

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

Impact Analysis is primarily used in Maintenance Testing to assess the potential effects of changes on existing system components. When modifications are made during maintenance, impact analysis helps identify which parts of the system might be affected, ensuring comprehensive test coverage. While other testing types may use impact analysis, maintenance testing relies on it most heavily because changes to existing systems carry the highest risk of unintended side effects.

Multiple choice technology testing
  1. Test Cases

  2. Specifications

  3. Test Data

  4. Test Design

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

Test Conditions are derived from Specifications, which include requirements documents, design specifications, and other stakeholder needs. Specifications provide the basis for identifying what needs to be tested. Test conditions are the specific items or attributes that will be tested, and they must be traceable back to the original requirements. Test cases are created FROM test conditions, not the other way around.

Multiple choice technology testing
  1. Component testing

  2. Functional testing

  3. System testing

  4. Acceptance testing

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

According to the ISTQB software testing standard, 'Functional testing' is classified as a test type (testing what the system does). The other options—Component, System, and Acceptance testing—are categorized as test levels, not test types.

Multiple choice technology
  1. Unit testing

  2. Independent testing

  3. Destructive testing

  4. System testing

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

Independent testing encourages objectivity by having testers who are not involved in developing the system evaluate it. Since the testers have no stake in the code being 'correct', they can assess the software more impartially without developer bias. Unit testing is typically done by developers themselves, destructive testing is a technique not a testing level, and system testing while valuable is often done by the same team or with developers involved - only independent testing explicitly separates tester from developer to ensure objective evaluation.

Multiple choice technology
  1. Testing performed to expose faults in the interfaces and in the interaction between integrated components.

  2. Testing to verify that a component is ready for integration.

  3. Testing to verify that the test environment can be integrated with the product

  4. Integration of automated software test suites with the product.

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

To answer this question, the user needs to know the definition of integration testing. Integration testing is a type of testing that verifies the interactions between different components of a system after they have been integrated.

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

A. Testing performed to expose faults in the interfaces and in the interaction between integrated components. This option is correct. Integration testing is performed to identify defects in the interfaces and interactions between integrated components.

B. Testing to verify that a component is ready for integration. This option is incorrect. This is not the purpose of integration testing. This type of testing is done before integration testing to ensure that individual components are functioning appropriately.

C. Testing to verify that the test environment can be integrated with the product. This option is incorrect. Integration testing is not concerned with testing the environment, but rather the interactions between different components.

D. Integration of automated software test suites with the product. This option is incorrect. This is not the purpose of integration testing. Automated testing is a separate process from integration testing.

The Answer is: A

Multiple choice technology
  1. Inspection is a form of functional testing.

  2. Functional testing is more powerful than static testing as you actually run the system and see what happens.

  3. Structural testing is more important than functional testing as it addresses the code.

  4. Functional testing is useful throughout the life cycle and can be applied by business analysts, testers, developers and users.

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

The correct answer is D because functional testing indeed applies throughout the software development lifecycle and can be performed by various roles including business analysts, testers, developers, and end users. Option A is incorrect because inspection is a static testing technique, not functional testing. Option B is incorrect because functional and static testing serve different purposes - one isn't 'more powerful' than the other. Option C is incorrect because structural and functional testing complement each other - neither is inherently more important.

Multiple choice technology
  1. Test management and control

  2. Test specification and design

  3. Test execution and logging

  4. Performance and monitoring

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

To answer this question, the user needs to know what test data preparation tools are and what activities are involved in software testing.

Test data preparation tools are used to generate test data and test cases automatically or semi-automatically. These tools help testers save time and effort in creating test data for software testing.

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

A. Test management and control: Test data preparation tools do not support test management and control activities. These activities are focused on planning, monitoring, and controlling the testing process.

B. Test specification and design: This option is correct. Test data preparation tools support test specification and design activities. These tools can generate test data based on predefined test scenarios and parameters.

C. Test execution and logging: Test data preparation tools do not support test execution and logging activities. These activities are related to running and recording the results of test cases.

D. Performance and monitoring: Test data preparation tools do not support performance and monitoring activities. These activities are focused on measuring the performance of the software and monitoring its behavior under different conditions.

Therefore, the correct answer is:

The Answer is: B. Test specification and design

Multiple choice technology
  1. Is only run once.

  2. Will always be automated.

  3. Will check unchanged areas of the software to see if they have been affected.

  4. Will check changed areas of the software to see if they have been affected.

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

The correct answer is C because regression testing specifically checks that unchanged parts of the software still work correctly after changes have been made elsewhere. This is the definition of regression testing - detecting unintended side effects. Option A is incorrect because regression tests run repeatedly, not just once. Option B is incorrect because regression tests can be manual or automated. Option D describes confirmation testing of changes, not regression testing.

Multiple choice technology
  1. a. Test principles only affect the preparation for testing.

  2. b. Test principles only affect test execution activities.

  3. c. Test principles affect the early test activities such as review.

  4. d. Test principles affect activities throughout the test life cycle.

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

The correct answer is D because testing principles (like early testing, defect clustering, pesticide paradox, etc.) apply to all testing activities throughout the entire software development lifecycle, from planning and design to execution and evaluation. Options A, B, and C are all incorrect because they attempt to limit the scope of test principles to specific phases, when in reality principles guide testing at every stage.

Multiple choice technology testing
  1. Boundary value analysis

  2. Usability testing

  3. Performance testing

  4. Security testing

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

Boundary value analysis is a functional testing technique that tests values at the boundaries of input domains (e.g., minimum, maximum, just below/above boundaries). It focuses on the functional behavior at edge cases. Usability, performance, and security testing are non-functional testing types.