CHAPTER ONE – Introduction to Software Testing and QA
1. Discuss three common reasons why software projects fail in terms of testing and QA
practices.
📘 Source: Chapter One – “Why Software Testing and QA Matter”; Chapter Six – “Challenges in
QA Process”
Software projects often fail when QA and testing are not properly managed.
1. Late involvement of QA: When testing starts only at the end of development, critical
defects are found too late, causing costly rework.
2. Incomplete requirements: Poorly defined or unclear requirements lead to gaps in testing
coverage and missed defects.
3. Lack of proper QA processes: Without clear standards, documentation, and reviews,
defects escape into production, affecting quality and user trust.
QA should be involved from the beginning to ensure preventive quality, not just defect detection.
11. Define Software Testing and Quality Assurance (QA). How do they differ in purpose
and scope?
📘 Source: Chapter One – “What is Software Testing?” & “What is Quality Assurance (QA)?”
“Software Testing is the process of evaluating a software product or application to detect errors
or missing requirements.”
“Quality Assurance (QA) refers to the set of activities designed to ensure that development
processes produce expected outcome.”
Difference:
Testing is defect detection; QA is defect prevention.
12. Why is software quality important in today’s technology-driven world? Provide at least
three justifications.
📘 Source: Chapter One – “Why Software Testing and QA Matter”
“Errors can lead to financial loss, legal consequences, damage to reputation, and loss of customer
trust.”
Therefore, software quality is vital for reliability, security, and user satisfaction.
14. List and explain at least three objectives of software testing.
📘 Source: Chapter One – “What is Software Testing?”
Objectives include:
1. Detecting defects before release.
2. Verifying functionality against requirements.
3. Building confidence that the product is ready for use.
“Testing is not only about finding faults but building confidence.”
16. Explain the difference between an error, defect (bug), and failure with practical
examples.
📘 Source: Chapter One – General context on Testing
Error: A mistake made by a developer (e.g., wrong logic).
Defect/Bug: Discovered in testing when output is incorrect.
Failure: When a defect reaches users and causes malfunction in production.
CHAPTER TWO – SDLC and QA Integration
2. Why is it important for requirements to be testable? Give an example of a non-testable
requirement and reframe it into a testable one.
📘 Source: Chapter Two – “QA Involvement in Requirement Gathering”
“QA ensures clear, testable, and complete requirements.”
A testable requirement allows QA to design measurable test cases.
❌ Non-testable requirement: “The system should be fast.”
✅ Testable version: “The system should load the dashboard within 3 seconds under
normal conditions.”
Testable requirements help measure success objectively and avoid ambiguity.
9. How does QA contribute during the Maintenance Phase of SDLC? Provide two specific
activities.
📘 Source: Chapter Two – “QA Activities Across the SDLC” (Maintenance Phase)
During Maintenance, QA:
1. Monitors performance of deployed software.
2. Conducts regression testing after updates or bug fixes.
“QA handles bug reports and regression testing in the maintenance phase.”
10. With the rise of Agile methodologies, explain how QA roles have shifted compared to
traditional Waterfall models.
📘 Source: Chapter Two – “Agile Development”
“In Agile, QA and testers are embedded within development teams, participating in daily
activities.”
Unlike Waterfall (where testing is at the end), Agile requires continuous collaboration, early
testing, and automation integration.
QA now contributes throughout development with faster feedback loops.
13. Explain the concept of the "V-Model" in software testing. How does it integrate testing
into development?
📘 Source: Chapter Two – “V-Model (Verification and Validation Model)”
“An extension of the Waterfall model… emphasizes early planning for testing. Each
development phase has a corresponding testing phase.”
It ensures validation and verification occur in parallel with development stages.
27. Discuss the role of QA in the Requirement Analysis phase of SDLC.
📘 Source: Chapter Two – “QA Activities Across SDLC (Requirement Phase)”
“QA ensures clear, testable, and complete requirements.”
QA validates clarity, consistency, and feasibility of requirements before development.
28. What is Shift-Left Testing and why is it important in Agile and DevOps environments?
📘 Source: Chapter Two – “Shift-Left Testing Approach”
“Testing activities start early in the SDLC.”
It’s important because it ensures early defect detection, reduced costs, and faster delivery.
CHAPTER THREE – Principles and Cost of Software Testing
15. What is the cost implication of finding defects late in the SDLC compared to early
detection?
📘 Source: Chapter Three – “Early Testing Saves Time and Cost”
“Fixing a bug after release can cost up to 100 times more than fixing it during design or
development.”
Early testing reduces cost and rework.
CHAPTER FOUR – Types and Levels of Software Testing
17. Differentiate between Functional Testing and Non-Functional Testing, giving two
examples of each.
📘 Source: Chapter Four – “Functional vs Non-Functional Testing”
Type Description Examples
Functional Verifies the system’s operations. Login, Payment processing
Non-Functional Checks performance and quality aspects. Load testing, Security testing
18. Describe the four main levels of testing (Unit, Integration, System, Acceptance). For
each, give one practical example.
📘 Source: Chapter Four – “Levels of Software Testing”
1. Unit: Test a single function (e.g., interest calculation).
2. Integration: Check data flow between login and profile modules.
3. System: Test full application workflow.
4. Acceptance: Users confirm the product meets expectations.
29. Imagine you are QA lead for online banking. Which testing levels and types would you
prioritize?
📘 Source: Chapter Four – “Levels of Testing” & Chapter Five – “Types of Testing”
Prioritize:
Levels: Unit, Integration, System, Acceptance.
Types: Security (protect user data), Performance (response time), and Regression
(stability after updates).
30. A login feature takes 10 seconds after authentication — which type of testing does this
relate to and how to report it?
📘 Source: Chapter Four – “Non-Functional Testing” (Performance Testing)
This issue relates to Performance Testing.
Report it as a defect with steps, expected response time, actual result (10 seconds), and
environment details.
CHAPTER FIVE – Testing Techniques and Approaches
3. Differentiate between Smoke Testing and Sanity Testing with examples.
📘 Source: Chapter Five – “Smoke Testing” & “Sanity Testing”
Aspect Smoke Testing Sanity Testing
Verify specific bug fixes or small
Purpose Quick check to confirm basic build stability.
updates.
Depth Broad and shallow. Narrow and deep.
Check if the app loads and login page
Example Verify if the fixed login issue now works.
opens.
“Smoke testing ensures the build is stable; sanity testing checks targeted fixes.”
4. Explain the difference between Regression Testing and Re-Testing, and give an example
scenario for each.
📘 Source: Chapter Five – “Regression Testing”
Regression Testing: Ensures new updates or fixes do not break existing features.
Example: After fixing a payment issue, verify that login and order history still work.
Re-Testing: Involves checking the specific defect that was previously fixed to confirm
resolution.
Example: After correcting a calculation bug, test the same function again to ensure it
works properly.
19. Explain the difference between Black Box Testing, White Box Testing, and Gray Box
Testing.
📘 Source: Chapter Five – “Black-Box Testing,” “White-Box Testing,” “Grey-Box Testing”
Type Focus Knowledge Example
Black Box Tests functionality No internal knowledge Login form
White Box Tests logic and code Full code access Path coverage
Gray Box Mix of both Partial knowledge Security testing
20. Discuss two testing design techniques used in Black Box Testing.
📘 Source: Chapter Five – “Test Design Techniques”
1. Equivalence Partitioning: Divides input into valid/invalid groups.
2. Boundary Value Analysis: Tests edge conditions at boundaries.
CHAPTER SIX – QA Processes and Documentation
5. What role does a Requirement Traceability Matrix (RTM) play in QA, and why is it
important?
📘 Source: Chapter Six – “Test Case Design and Documentation” (traceability)
An RTM ensures every requirement has a corresponding test case.
It tracks coverage, verifies implementation, and helps prevent missed functionality.
“It links requirements to test cases and ensures completeness and accountability in QA
processes.”
6. Imagine you are preparing a Test Plan for a mobile application. Identify four major
factors you must include in your plan.
📘 Source: Chapter Six – “Test Planning and Strategy”
A good Test Plan includes:
1. Objectives: What the testing aims to achieve.
2. Scope: Features to be tested and excluded.
3. Entry/Exit Criteria: When testing starts and ends.
4. Resource Requirements: Tools, devices, and personnel needed.
“A Test Plan outlines scope, objectives, tools, timelines, and responsibilities.”
21. What are the key components of a Test Plan Document?
📘 Source: Chapter Six – “Test Planning and Strategy”
“A Test Plan includes: Testing objectives, Features to be tested, Entry and exit criteria, Resource
requirements, Risk assessment.”
22. Differentiate between a Test Case, Test Script, and Test Scenario with examples.
📘 Source: Chapter Six – “Test Case Design and Documentation”
Test Case: Step-by-step procedure (e.g., login test with expected result).
Test Script: Automated version of a test case (e.g., Selenium script).
Test Scenario: High-level functionality (e.g., verify user authentication).
CHAPTER SEVEN – Tools for Testing and QA
7. A team wants to test an API for a new e-commerce system. Which tool(s) would you
recommend and why?
📘 Source: Chapter Seven – “API Testing Tools”
Recommend Postman or SoapUI.
“Postman is user-friendly and powerful for sending API requests and validating responses.”
“SoapUI supports both SOAP and REST API testing.”
These tools automate API tests, validate responses, and integrate easily with CI/CD pipelines.
23. List and briefly explain three categories of testing tools, giving one example in each.
📘 Source: Chapter Seven – “Categories of Testing Tools”
Category Description Example
Test Management Organize and track testing TestRail
Bug Tracking Report and monitor defects Jira
Automation Execute tests automatically Selenium
24. Compare open-source testing tools with commercial testing tools.
📘 Source: Chapter Seven – “Open-Source vs Commercial Tools”
Open Source Commercial
Free and customizable Require license fees
Community-supported Vendor support
May need scripting User-friendly with full features
CHAPTER EIGHT – Automation in Software Testing
8. List three best practices to reduce flaky tests in automation frameworks.
📘 Source: Chapter Eight – “Best Practices for Automation”
To reduce flaky (inconsistent) tests:
1. Avoid hard-coded values — use variables/config files.
2. Review and fix flaky tests regularly.
3. Ensure stable environments and proper synchronization before assertions.
“Follow coding standards, use assertions wisely, review test reports regularly.”
25. Identify three types of tests most suitable for automation and explain why.
📘 Source: Chapter Eight – “When to Automate Tests”
Test Type Reason
Regression Repeated often after updates
Unit Fast and frequently run
Smoke/Sanity Quick stability checks
26. What are some common challenges teams face when implementing test automation?
📘 Source: Chapter Eight – “Challenges in Test Automation”
“High setup cost, maintenance overhead, false results, skill requirements, and tool selection
confusion.”