What is Software Testing? - Answers Software testing is a process to assess the quality of
software and reduce the risk of operational failure. It includes activities such as test execution,
planning, analysis, design, reporting progress/results, and evaluating test quality.
What are the typical objectives of testing? - Answers Objectives of testing include:
-Evaluating requirements, user stories, and code.
-Verifying that all requirements are met.
-Validating the system for stakeholders.
-Building confidence in quality.
-Preventing defects.
-Identifying failures and defects.
-Reducing the risk of quality issues.
-Ensuring compliance with standards.
What is the difference between Testing and Debugging? - Answers -Testing: A systematic
process to identify and report defects; testing doesn't involve fixing defects.
-Debugging: A development activity where defects are found, analyzed, and fixed. Confirmation
testing then checks if these fixes work as intended.
Why is testing necessary? - Answers Testing helps:
-Reduce the risk of software failure.
-Ensure compliance with legal and industry standards.
-Avoid losses in money, time, and reputation.
-Prevent possible injuries or deaths due to software malfunctions.
How does testing contribute to project success? - Answers Involving testers early in reviews
and design can:
-Identify defects before they become bigger issues.
,-Increase understanding between testers, designers, and developers.
-Enhance software quality by removing defects early in the process.
What is the relationship between Quality Assurance (QA) and Testing? - Answers -Quality
Assurance: Focuses on following processes to ensure quality levels are achieved, using
activities like root cause analysis.
-Testing: Part of quality control, ensuring proper functioning and defect identification within the
software development process.
What are Errors, Defects, and Failures? - Answers -Error: Human mistake that leads to a defect.
-Defect: Result of an error, which can cause failures.
-Failure: The system does not perform as expected due to a defect. Specific conditions or inputs
may be needed to trigger a failure.
What are common causes of errors in software development? - Answers Errors may arise from:
-Time pressure.
-Human error or inexperience.
-Miscommunication on requirements or design.
-Complexity in code or design.
-Misunderstandings of inter-system interactions.
What are False Positives and False Negatives in testing? - Answers -False Positive: A reported
defect that isn't actually a defect, often due to issues in the test environment or data.
, -False Negative: A test fails to detect an actual defect, meaning a defect goes unnoticed.
Why is identifying the root cause of a defect important? - Answers Identifying root causes helps:
-Prevent similar defects in the future.
-Improve processes by addressing underlying issues, rather than just the symptoms.
Is exhaustive testing possible? Why or why not? - Answers Exhaustive testing (testing
everything) is impossible due to time and resource limitations. Testers should prioritize by
focusing on critical functions and high-risk areas to provide the greatest value.
How are testing and risk related? - Answers Higher risk requires more extensive testing.
Testing focuses on minimizing the likelihood and impact of risks, ensuring that critical functions
meet quality standards.
Testing Principle 1
What does the principle "Testing shows the presence of defects, not their absence" mean? -
Answers It means testing can reveal defects but cannot prove that a program is entirely defect-
free. Testing reduces the probability of undiscovered defects but doesn't guarantee total
correctness.
Testing Principle 2
Why is exhaustive testing impossible? - Answers Testing all combinations of inputs and
conditions is impractical, except for very simple cases. Instead, testing should focus on risk
analysis, test techniques, and prioritization.
Testing Principle 3
How does early testing save time and money? - Answers Early testing, or "shift-left" testing,
identifies defects in the early stages of the software development lifecycle, reducing costly
changes and rework later on.
Testing Principle 4
What does "Defects cluster together" mean in software testing? - Answers Most defects are
often found in a few modules. Approximately 80% of issues are usually concentrated in 20% of
the code, guiding testers to focus on these high-risk areas.