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
-
The system shall be user friendly.
-
The safety-critical parts of the system shall contain 0 faults.
-
The response time shall be less than one second for the specified design load.
-
The system shall be built to be portable.
C
Correct answer
Explanation
A requirement is testable if it can be verified through a concrete, measurable test. Specifying that response time must be 'less than one second' under a specific load provides a quantifiable metric, unlike subjective or impossible criteria like 'user friendly' or '0 faults'.
-
System tests are often performed by independent teams.
-
Faults found during system tests can be very expensive to fix.
-
End-users should be involved in system tests.
-
Functional testing is used more than structural testing.
C
Correct answer
Explanation
System testing is typically performed by independent test teams (option A is true). Faults found during system testing are indeed expensive to fix because they're caught late in development (option B is true). Functional testing, which tests against requirements, is more commonly used than structural testing in system testing (option D is true). End-users are primarily involved in user acceptance testing, not system testing, making option C the false statement.
-
time runs out.
-
the required level of confidence has been achieved.
-
no more faults are found.
-
the users won’t find any serious faults.
B
Correct answer
Explanation
Testing is complete when the required level of confidence has been achieved, not when arbitrary conditions are met. Time running out (option A) is a constraint, not a completion criterion. Finding no more faults (option C) is unrealistic and doesn't prove sufficient coverage. Option D is subjective and unmeasurable. Option B is the only criterion based on measurable confidence levels and risk assessment.
-
It includes the verification of designs.
-
It states that modules are tested against user requirements.
-
It specifies the test techniques to be used.
-
It only models the testing phase.
A
Correct answer
Explanation
The V-model is a systems development lifecycle model that maps testing phases directly to corresponding development phases. It verifies designs early through static techniques and aligns verification (like design reviews) with validation (testing code against specifications).
-
Features to be tested
-
Incident reports
-
Risks
-
Schedule
B
Correct answer
Explanation
A test plan includes features to be tested (option A), risks (option C), and schedule (option D) - these are all planning elements. Incident reports (option B) are documents created during test execution when defects are found. They are outputs of the testing process, not inputs to the planning phase.
-
found in the software; the result of an error.
-
departure from specified behavior.
-
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 work as expected. Option A describes a defect or bug in the software. Option C describes an error in the code. Option D describes a mistake made by a person. The standard sequence is: mistake (human) → error (code defect) → failure (observable incorrect behavior).
-
Is the task done correctly
-
Is the correct task done
-
Is the task complete
-
Is the task created
A
Correct answer
Explanation
Verification asks 'Are we building the product right?' - it checks that the software correctly implements the documented requirements and specifications. Option A 'Is the task done correctly' captures this - it's about process correctness. Validation asks 'Are we building the right product?' which is about whether requirements themselves match user needs. Option A correctly identifies verification as process correctness.
-
Is the task done correctly
-
Is the correct task done
-
Is the task complete
-
Is the task created
B
Correct answer
Explanation
Validation asks 'Are we building the right product?' - it verifies that the software being built actually addresses the real user needs and intended purpose. Option B 'Is the correct task done' captures this - it's about requirements validity, not implementation correctness. Verification (Option A) is about building correctly according to specs. Option B correctly identifies validation as checking whether the right product is being built.
-
Automation testing is the process of developing and executing tests that can run unattended
-
Automation testing is the process of developing and executing tests that can run with manual intervention
-
All testing procedures are called automation testing
-
Automation testing is the process of developing and executing tests that can be run by testers
A
Correct answer
Explanation
The defining characteristic of automated testing is that tests execute without human intervention during the run - you write the test once, and it runs repeatedly unattended. Option A correctly states this key feature. Option B is wrong because manual intervention contradicts automation. Option C is too broad - not all testing is automated. Option D is incorrect because automation's purpose is to eliminate the need for testers to manually run each test. Option A is correct.
-
To reduce testing time
-
To reduce testing cost
-
All of the above
-
We have budget for automation
C
Correct answer
Explanation
Automation is primarily adopted to reduce testing time (automated tests run much faster than manual testing) and reduce cost (less manual effort required over time, especially for regression testing). Option C 'All of the above' correctly captures both these primary benefits. Option A and B individually are both valid reasons to automate. Option D is not a reason to automate - having a budget is an enabler, not a motivation. Option C is correct.
-
Load Testing
-
Stress Testing
-
Functional Testing
-
Regression Testing
B
Correct answer
Explanation
Stress testing pushes a system beyond its specified limits to find breaking points. Since the requirement states 'up to 10 MB' but we're testing with 100 MB (10x the documented limit), this is stress testing - we're intentionally exceeding normal capacity to observe failure behavior. Load testing tests expected load (within specifications). Functional testing verifies features work as specified. Regression testing checks that changes don't break existing functionality. Option B is correct.
-
Load Testing
-
Stress Testing
-
Negative Testing
-
Regression Testing
C
Correct answer
Explanation
Negative testing involves testing beyond the specified valid boundaries to verify the system properly handles invalid input. Testing with 6 characters when the requirement states maximum 5 characters is testing the failure condition - the system should reject this input. Load testing and stress testing are performance testing types, while regression testing checks for unintended changes after modifications.
-
Manual Testing
-
Functional Testing, Regression Testing
-
Manual Testing, Automation Testing
-
Automation Testing
C
Correct answer
Explanation
The two primary methods of software testing execution are manual testing (where test cases are run manually by a human) and automation testing (where scripts and tools execute the tests). Other options list specific testing types rather than general execution methods.
-
To find bug whenever time permits
-
To find bug in the assigned module
-
To find bugs as early as possible
-
To find bugs whenever automation suite is executed
C
Correct answer
Explanation
One of the fundamental principles of software testing is to identify and resolve defects as early as possible in the software development life cycle (SDLC) to reduce the cost and effort of fixing them later.
-
Find bugs
-
Provide confidence and information
-
Prevent defects
-
All of the above
D
Correct answer
Explanation
Testing serves multiple purposes: it finds bugs in the software, provides confidence and information about system quality to stakeholders, and helps prevent defects by identifying issues early. 'All of the above' correctly captures that testing is not just about finding bugs but is a comprehensive quality assurance activity.