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
-
Underestimating the effort needed to maintain the test assets
-
Losing access to important testing information when needed
-
Relying too much on qualitative and quantitative assessments
-
Lowering the morale of the test team because of repetition
A
Correct answer
Explanation
Test support tools require ongoing maintenance to remain effective. Organizations often underestimate the effort needed to update test scripts, maintain tool configurations, and manage test assets as the system under test evolves. This is a recognized risk in test automation.
-
Operational
-
Customer
-
Contractual
-
Regulatory
A
Correct answer
Explanation
Operational acceptance testing is typically performed by system administrators to verify that the system meets operational requirements such as backup/recovery procedures, performance under load, and manageability. Customer acceptance is done by users, contractual by legal/business stakeholders, and regulatory by compliance auditors.
-
System testing
-
Operational testing
-
Structural testing
-
Integration testing
C
Correct answer
Explanation
Structural testing (also known as white-box testing) can be performed at all test levels - unit, integration, system, and acceptance. It examines the internal structure and implementation of the software. System and Operational testing are primarily at the system level, while Integration testing focuses on interfaces between components.
-
Project Managers
-
Operators of the product
-
Developers
-
Technical Experts
B
Correct answer
Explanation
Operational acceptance testing is performed by the end users or operators who will actually use the system in production. This is different from user acceptance testing (which may include business users) - operational testing focuses on operational readiness, maintainability, and recoverability from the operator's perspective.
-
Test Implementation and execution
-
Test Analysis and Design
-
Evaluating the Exit Criteria and reporting
-
Test Closure Activities
-
I, ii, iii are true and iv is false
-
I , iii, iv are true and ii is false
-
ii, iii are true and i and iv are false
-
I , ii are false and iii, iv are true
B
Correct answer
Explanation
A Test Plan document includes test items (features to test), test deliverables (reports, logs, etc.), and responsibilities (roles and tasks). Test Scripts are not part of the Test Plan outline - they are created during test design/specification, which comes later.
-
static testing includes desk checking
-
Static testing requires the running of tests through the code
-
static testing includes techniques such as reviews and inspections
-
static testing can give measurements such as cyclomatic complexity
B
Correct answer
Explanation
Static testing involves testing without executing the code - it includes reviews, inspections, walkthroughs, and static analysis tools that examine code structure. Statement B is false because static testing by definition does NOT require running code through execution - that's dynamic testing. Statements A, C, and D correctly describe aspects of static testing.
-
Component Integration Testing
-
Component System Testing
-
Component Sub System Testing
-
Maintenance Testing
A
Correct answer
Explanation
Link Testing, which tests the interactions between integrated components, is also known as Component Integration Testing. It focuses on verifying that components can correctly communicate and exchange data. System testing and subsystem testing are broader scopes, and maintenance testing occurs after deployment.
-
Development team
-
Testing team
-
Both
-
None of the Above
A
Correct answer
Explanation
Coverage measurement tools are primarily used by the development team during unit and integration testing to measure how much of the code is being exercised by tests. The testing team typically focuses on test design and execution rather than coverage measurement itself.
-
Boundary value analysis
-
Equivalence partitioning
-
Decision table testing
-
State transition testing
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.
-
Actual results
-
Program specification
-
User requirements
-
System specification
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.
-
Found in the software; the result of an error.
-
Departure from specified behaviour.
-
An incorrect step, process or data definition in a computer program.
-
A human action that produces an incorrect result.
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.
-
Regression testing
-
Integration testing
-
System testing
-
User acceptance testing
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.
-
Post-release testing by end user representatives at the developer’s site.
-
The first testing that is performed.
-
Pre-release testing by end user representatives at the developer’s site.
-
Pre-release testing by end user representatives at their sites.
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.
-
Developers.
-
Analysts.
-
Testers.
-
Incident Managers.
A
Correct answer
Explanation
Debugging is the process of locating, analyzing, and fixing bugs in the source code. This activity is typically performed directly by developers who write and modify the code.