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
-
Confidentiality
-
Integrity
-
Availability
-
Functionality Testing
-
All the above
A,B,C
Correct answer
Explanation
Confidentiality ensures data is only accessible to authorized parties. Integrity guarantees data is not altered without authorization. Availability ensures systems and data are accessible when needed. These are the three pillars of the CIA triad.
-
Check the memory leaks
-
Check the robustness
-
Check the branch coverage
-
Check the decision tables
D
Correct answer
Explanation
Component testing focuses on individual software components. Memory leak checking, robustness testing, and branch coverage are all component-level testing activities. Decision table testing is a system-level or acceptance testing technique that examines complex business logic and decision rules, not component behavior.
-
System testing
-
Acceptance testing
-
Integration testing
-
Smoke testing
B
Correct answer
Explanation
Contract and regulation testing verifies that software meets contractual obligations and regulatory requirements. This is a key part of acceptance testing, which validates that the system meets business and legal requirements before it's accepted by stakeholders. It's not system testing (functional verification), integration testing (interface verification), or smoke testing (basic stability check).
-
Boundary value analysis
-
Equivalence partitioning
-
Decision table testing
-
State transition testing
B
Correct answer
Explanation
Equivalence partitioning divides input and output domains into classes where tests from one class represent all others, achieving coverage. Boundary value analysis focuses on edge values, decision tables handle complex logic, and state transition tests model state changes.
-
Identifying test conditions only, not Identifying test cases
-
Not Identifying test conditions, Identifying test cases only
-
Identifying test conditions and Identifying test cases
-
Identifying test conditions or Identifying test cases
C
Correct answer
Explanation
Test design techniques serve the dual purpose of identifying test conditions (what to test) AND identifying specific test cases (how to test). Options A and B are incomplete - focusing on only one aspect. Option D incorrectly suggests 'or' instead of 'and'.
-
To ensure that the test case specification is complete
-
To set the criteria used in generating test inputs
-
To know when test planning is complete
-
To plan when to stop testing
-
Testing to see where the system does not function properly
-
Testing quality attributes of the system including performance and usability
-
Testing a system feature using only the software required for that action
-
Testing a system feature using only the software required for that function
B
Correct answer
Explanation
Non-functional testing examines quality attributes rather than functional behavior. This includes performance testing (speed, response time), usability testing (user experience), reliability, security, and other '-ilities'. Option A describes functional testing, while options C and D describe functional feature testing.
-
i, iii & iv are true, ii & v are false
-
iii is true, i, ii, iv & v are false
-
iii & iv are true, i, ii & v are false
-
i, iii, iv & v are true, ii is false
A
Correct answer
Explanation
Early test design prevents fault multiplication (catching requirements issues before implementation), finds faults early when cheaper to fix, and can cause requirement changes based on test insights. Statement ii is false - early faults are LESS expensive to fix. Statement v is situational - early design can reduce total effort despite upfront investment.
-
All the planned tests have been run
-
Time has run out
-
All faults have been fixed correctly
-
It depends on the risks for the system being tested
D
Correct answer
Explanation
Testing completion is risk-based, not based on arbitrary criteria like running all tests, time expiration, or fixing all faults. The decision depends on the acceptable level of residual risk for the system being tested. Options A, B, and C are incomplete approaches that don't consider business risk.
-
Early testing
-
Defect clustering
-
Pesticide paradox
-
Exhaustive testing
D
Correct answer
Explanation
Exhaustive testing (testing all possible inputs and combinations) is impractical and impossible for non-trivial systems - it's NOT a testing principle. Early testing, defect clustering (Pareto principle), and pesticide paradox (repeated tests become less effective) ARE recognized testing principles.
-
Breadth Test and Depth Test
-
Retesting
-
Confirmation Testing
-
Sanity Testing
A
Correct answer
Explanation
Maintenance testing uses breadth testing for comprehensive coverage across the system and depth testing for thorough examination of affected areas. Retesting and confirmation testing are similar techniques but not the primary methodologies, while sanity testing is a different category altogether.
-
Structural Testing
-
Design Based Testing
-
Error Guessing Technique
-
Experience Based Technique
A
Correct answer
Explanation
White box testing examines the internal code structure and implementation details of software, which is why it's alternatively called structural testing. Design-based testing, error guessing, and experience-based techniques are distinct testing approaches.
-
Are most useful in uncovering defects in the process flows during real world use of the system
-
Are most useful in uncovering defects in the process flows during the testing use of the system
-
Are most useful in covering the defects in the process flows during real world use of the system
-
Are most useful in covering the defects at the Integration Level
A
Correct answer
Explanation
Use case test cases are most valuable for uncovering defects in process flows during real-world system usage because they simulate actual user scenarios. The key distinction in the options is between 'real world use' and 'testing use' - real-world usage is where use cases shine.
-
Creating test suites from the test cases
-
Executing test cases either manually or by using test execution tools
-
Comparing actual results
-
Designing the Tests
D
Correct answer
Explanation
Test implementation and execution involves creating test suites from test cases, executing them manually or with tools, and comparing actual results with expected results. Designing tests is part of the earlier test design phase, not implementation and execution.
-
ii is True; i, iii, iv & v are False
-
i,ii,iii are true and iv is false
-
ii & iii are True; i, iv are False
-
ii, iii & iv are True; i is false
B
Correct answer
Explanation
A risk-based approach uses identified risks to determine the test techniques, the depth of testing required, and to prioritize tests to find critical bugs early. Project cost estimation is a project management activity, not a function of testing risks, making statements i, ii, and iii true and iv false.