✅ 1. What is software testing?
Answer:
Software testing is the process of checking whether a software application behaves as expected and meets the requirements specified by the client or stakeholders. It helps to identify defects, gaps, or missing functionalities compared to the actual requirements. The main goal is to ensure the product is bug-free, reliable, secure, and provides a good user experience before it is released.
Example:
Suppose a banking app is expected to transfer money between two accounts. As a tester, you would test whether the amount is correctly deducted and added, the balance is updated, and proper messages are displayed. If any part fails, it needs to be fixed before release.
✅ 2. What is manual testing?
Answer:
Manual testing is a type of software testing where test cases are executed by a human tester without using any automation tools. The tester checks the application by interacting with it manually, observing its behavior, and comparing actual output with the expected result.
Manual testing is usually the first step in the QA process and helps in testing usability, UI/UX, and complex scenarios where human observation is important.
Example:
If you're testing a "Contact Us" form, you’ll fill in all fields manually, submit the form, and check whether you get a success message, email confirmation, and data is saved in the backend (if applicable).
✅ 3. Why is software testing important?
Answer:
Software testing is important because it ensures the delivery of high-quality, reliable, and secure software to the end-users. Bugs or failures in a live product can result in financial loss, customer dissatisfaction, and brand damage.
Testing helps detect problems early in the development cycle, which saves cost and effort. It also helps in verifying if the application meets business and user expectations.
Example:
If a bug in a ticket booking system charges users twice for the same seat, it can cause trust issues, financial problems, and possibly even legal consequences. Testing prevents such issues.
✅ 4. What is the difference between a defect, an error, and a failure?
Answer:
-
Error: A mistake made by a developer during coding or design.
Example: Typing total = a - b instead of total = a + b.
-
Defect: When the error leads to a mismatch between actual and expected output during testing, it becomes a defect (bug).
Example: The total is showing as -5 when it should be +5.
-
Failure: When the defect appears while the application is being used by the end user, it's a failure.
Example: A customer using the app gets the wrong invoice due to this calculation defect.
Understanding these differences helps in tracking the origin and impact of issues.
✅ 5. What is a test case?
Answer:
A test case is a detailed document that contains a set of steps, conditions, inputs, and expected results to validate a particular feature or functionality of an application. Test cases help testers follow a structured approach during testing and ensure coverage of all requirements.
Each test case typically includes:
-
Test Case ID
-
Test Case Description
-
Preconditions
-
Test Steps
-
Test Data
-
Expected Result
-
Actual Result
-
Status (Pass/Fail)
Example:
For a login page:
✅ 6. What is the difference between test case and test scenario?
Answer:
A test scenario is a high-level idea of what needs to be tested. It focuses on the functionality or user journey without going into details.
A test case is a detailed document that explains how to test that scenario, step by step, with expected outcomes.
Example:
Test scenarios are helpful when you want to get a quick overview. Test cases are used during execution to ensure consistent testing.
✅ 7. What is the bug life cycle?
Answer:
The bug life cycle defines the various stages a defect goes through from identification to closure. It helps in tracking the status and responsibility of each bug.
Stages in Bug Life Cycle:
-
New: When a bug is first reported.
-
Assigned: Assigned to a developer to fix.
-
Open: Developer starts analyzing the bug.
-
Fixed: Developer fixes the issue.
-
Retest: Tester tests the fix.
-
Closed: Tester confirms the fix and closes the bug.
-
Reopen (if issue still exists)
This cycle ensures accountability and clear communication between testers and developers.
✅ 8. What is severity and priority in bug tracking?
Answer:
Example:
-
High Severity, Low Priority: Crash occurs in a rarely used report generation screen.
-
Low Severity, High Priority: Company logo is missing from the homepage on launch day.
Testers usually set severity, while product managers or leads set priority.
✅ 9. What is the difference between regression and retesting?
Answer:
-
Retesting is testing a specific bug again after it has been fixed by the developer to confirm it's resolved.
-
Regression Testing is testing the rest of the application to ensure the fix didn’t break any other existing functionality.
Example:
If a bug in the "Add to Cart" feature was fixed:
-
Retesting would be checking that adding items to the cart now works.
-
Regression Testing would include checking checkout, wishlist, and login to ensure they weren’t affected by the code change.
✅ 10. What is boundary value analysis (BVA)?
Answer:
Boundary Value Analysis is a black-box testing technique where we test the boundary values of input fields. Since most bugs occur at the edges of input ranges, this technique helps in identifying them.
Example:
If the valid age input is 18 to 60:
This helps ensure that the application handles edge cases properly.
✅ 11. What is functional testing?
Answer:
Functional testing is a type of black-box testing that checks whether the application behaves according to the specified functional requirements. It focuses on what the system is supposed to do rather than how it does it.
Testers verify each feature of the software by providing appropriate input and checking the output against the expected result. This type of testing ensures that all functionalities, such as user login, file uploads, form submissions, and calculations, work correctly.
Example:
In an online shopping website, functional testing would include checking the search functionality, adding items to the cart, checkout process, and payment integration.
✅ 12. What is non-functional testing?
Answer:
Non-functional testing evaluates aspects of the software that aren't related to specific user actions or functionality but affect the user experience. It includes performance, scalability, security, usability, and reliability.
This type of testing is critical to ensure that the software can handle expected user load, is secure from threats, and provides a smooth user experience.
Example:
✅ 13. What is smoke testing?
Answer:
Smoke testing is a high-level type of testing that is done after a new build is deployed. It checks whether the most important functionalities are working and whether the build is stable enough for further testing.
This is often called "build verification testing" and is usually performed before deeper testing like regression or functional testing.
Example:
If a login page, dashboard, and logout are key features, a smoke test would verify if a user can log in, view the dashboard, and log out successfully. If any of these fail, the build is rejected for further testing.
✅ 14. What is sanity testing?
Answer:
Sanity testing is a focused type of testing done after receiving a new build or fix to check whether the specific functionality or bug fix works as intended. It’s a subset of regression testing and does not involve full testing.
Example:
If the "search filter" on a product page was not working and a fix was applied, then sanity testing would involve checking only the search filter to confirm the fix, rather than retesting the entire site.
✅ 15. What is regression testing?
Answer:
Regression testing is done to verify that new changes or bug fixes have not unintentionally affected the existing functionality of the software. It ensures that old features still work after code changes.
Regression tests are usually automated, but they can be done manually as well in smaller projects.
Example:
Suppose the development team adds a discount feature on the checkout page. Regression testing would include re-checking the cart, payment, and product pages to make sure the discount feature did not break anything else.
✅ 16. What is re-testing?
Answer:
Re-testing is the process of testing a particular defect again after it has been fixed by the developer to confirm the issue is resolved.
It is different from regression testing because it focuses only on the specific bug and its related test case, not on other areas.
Example:
If a tester finds that the "Reset Password" link is not working and the developer fixes it, then the tester will retest that exact scenario using the same steps as earlier to confirm the fix.
✅ 17. What is acceptance testing?
Answer:
Acceptance testing is the final level of testing performed before delivering the software to the client or end-user. The goal is to verify that the software meets business requirements and is ready for production.
It is usually performed by end-users or stakeholders and is also known as User Acceptance Testing (UAT).
Example:
In a banking application, UAT would include real users checking login, fund transfers, balance checks, and statements to ensure the system behaves as expected before going live.
✅ 18. What is system testing?
Answer:
System testing is a type of black-box testing that evaluates the complete system's functionality as a whole. It is performed after integration testing and tests the application in its entirety.
The objective is to ensure that the system complies with the specified requirements and functions correctly in all areas.
Example:
In a hotel booking app, system testing would include testing search, room booking, payments, email confirmations, and cancellations together as a complete system.
✅ 19. What is integration testing?
Answer:
Integration testing checks the interaction between different modules or components of the application. It ensures that data flows correctly between systems and modules work together as expected.
This is important because individual modules might work fine on their own, but issues may occur when they interact.
Example:
If a login module connects to a profile dashboard, integration testing ensures that once a user logs in, their correct profile information is displayed by pulling data from the backend.
✅ 20. What is unit testing?
Answer:
Unit testing involves testing individual components or functions of a software application in isolation. It is usually done by developers during the coding phase.
The goal is to catch bugs early in the development cycle and ensure that each part of the program behaves as expected.
Example:
In an e-commerce site, the function that calculates the total price including taxes and discounts is a unit. Testing just this function with different inputs would be unit testing.
✅ 21. What is exploratory testing?
Answer:
Exploratory testing is a type of informal testing where testers explore the application without predefined test cases. They learn the system while testing it and use their intuition, domain knowledge, and experience to find defects.
It is useful when there is limited documentation or time. This kind of testing is creative and helps discover unexpected issues.
Example:
A tester opens a travel booking app and starts checking various flows like login, flight search, filtering, and logout, even without any formal test cases, and finds that the “Sort by Price” filter is showing incorrect results.
✅ 22. What is usability testing?
Answer:
Usability testing checks how user-friendly, intuitive, and easy the software is for end-users. It focuses on user experience—navigation, content clarity, layout, and design consistency.
Testers or even real users are asked to perform common tasks and provide feedback about their experience.
Example:
Testing whether a new user can easily navigate a mobile app to book a ride, without external help. If users get confused or lost, the design may need improvement.
✅ 23. What is compatibility testing?
Answer:
Compatibility testing ensures that the software works correctly across different devices, operating systems, browsers, screen sizes, and network environments. It’s important for cross-platform applications.
Example:
A web application should work properly on:
-
Google Chrome, Firefox, Safari, and Edge
-
Android and iOS phones
-
Different resolutions like 1024x768, 1920x1080, etc.
✅ 24. What is localization testing?
Answer:
Localization testing verifies whether a software application behaves correctly in a specific region or language. It includes checking translated content, date/time formats, currency symbols, number formats, etc.
Example:
An app designed for Indian users should display prices in INR (₹), show the date format as DD/MM/YYYY, and ensure that Hindi or regional language translations are accurate.
✅ 25. What is internationalization testing?
Answer:
Internationalization (i18n) testing ensures the software can support multiple languages, regions, and cultures without needing redesign. It checks whether UI elements like fonts, layouts, and encoding can handle translations or region-specific data.
Example:
Testing if a form label can dynamically change from “Name” to “Nombre” (Spanish) or “เคจाเคฎ” (Hindi), and still look well-aligned.
✅ 26. What is performance testing?
Answer:
Performance testing checks how the application behaves under load, in terms of responsiveness, speed, and stability. It includes load testing, stress testing, and spike testing.
Example:
Testing whether a website can handle 5000 users at the same time without slowing down or crashing during a flash sale.
✅ 27. What is load testing?
Answer:
Load testing checks the application's ability to handle expected user traffic. The aim is to verify whether the system can perform well under expected usage conditions.
Example:
If an app is expected to have 1000 users per hour, load testing simulates that number of users to see how it handles real-life demand.
✅ 28. What is stress testing?
Answer:
Stress testing pushes the system beyond its normal limits to check how it behaves under extreme conditions or when overloaded. It helps find the application's breaking point.
Example:
Testing what happens when 10,000 users access a web app at once, even though the expected maximum is 5000. The goal is to see if the system crashes gracefully or abruptly.
✅ 29. What is alpha testing?
Answer:
Alpha testing is done by internal teams (developers and testers) before releasing the product to external users. It is usually conducted in a controlled environment to catch critical bugs early.
Example:
Before releasing a new ride-hailing app to the public, the company’s internal QA team tests it thoroughly in-house.
✅ 30. What is beta testing?
Answer:
Beta testing is done by a limited set of real users in a real environment to gather feedback and find issues that internal testers might have missed. It usually follows alpha testing.
Example:
A company releases a beta version of a gaming app to 500 users globally and collects their feedback on bugs and user experience.
✅ 31. What is the difference between verification and validation?
Answer:
-
Verification checks whether the product is being built correctly (based on design and requirements). It answers: "Are we building the product right?"
-
Validation checks whether the product actually meets user needs. It answers: "Are we building the right product?"
Example:
✅ 32. What is a test plan?
Answer:
A test plan is a formal document that describes the scope, objectives, resources, schedule, and strategy for testing activities. It acts as a roadmap for the QA team.
Key components include:
-
Test objectives
-
Test scope
-
Testing approach
-
Resources required
-
Risks and dependencies
-
Entry and exit criteria
-
Deliverables
✅ 33. What is a test strategy?
Answer:
A test strategy is a high-level document that outlines the testing approach across the entire organization or project. It defines how testing will be done, the tools used, environments needed, and quality standards.
It is usually created by QA managers or leads and includes:
✅ 34. What is defect density?
Answer:
Defect density is a metric that shows the number of confirmed defects per size of the software component (usually per 1000 lines of code). It helps evaluate the quality and stability of the application.
Formula:
Defect Density = Total Defects / Size of Code (KLOC)
Example:
If a module has 10 defects in 2000 lines of code, the defect density is 5 defects/KLOC.
✅ 35. What is severity and how is it different from priority?
Answer:
Example:
-
High Severity, Low Priority: App crashes on clicking a rarely used feature.
-
Low Severity, High Priority: Misspelled company name on the homepage.
Testers usually define severity; priority is often set by the product team or lead.
✅ 36. What are entry and exit criteria in testing?
Answer:
These criteria help in planning and managing the testing process effectively.
✅ 37. What is defect leakage?
Answer:
Defect leakage refers to the number of bugs that are missed during testing and found later in production by end users or stakeholders.
It’s an important metric to assess the effectiveness of the testing process.
Example:
If 100 bugs were reported during testing, but 5 more bugs were found after release, then defect leakage = 5%.
✅ 38. What is test data?
Answer:
Test data is the set of inputs used by testers to execute test cases. It may include usernames, passwords, customer details, product details, or any input the application processes.
Test data can be:
-
Valid (to check expected behavior)
-
Invalid (to check how the app handles errors)
-
Boundary data (to test limits)
Example:
For a login form:
-
Valid: correct email & password
-
Invalid: blank fields, wrong credentials
-
Boundary: very long usernames or special characters
✅ 39. What are test deliverables?
Answer:
Test deliverables are the documents and artifacts created during and after the testing process. They help track the progress, quality, and coverage of testing activities.
Common test deliverables:
-
Test Plan
-
Test Cases
-
Test Scripts
-
Defect Reports
-
Test Summary Report
-
Traceability Matrix
✅ 40. What is a test environment?
Answer:
A test environment is a setup of software and hardware where testing is conducted. It mimics the real-world production environment as closely as possible to ensure accurate test results.
Components may include:
-
Application server
-
Database
-
Browser versions
-
Operating system
-
Network configuration
Example:
Testing a banking app on Windows 10, Chrome browser, and a specific backend DB server before deployment.
✅ 41. What is a defect life cycle (bug life cycle)?
Answer:
The defect life cycle defines the various stages a defect goes through from the time it is identified until it is closed. It helps the team track and manage each bug efficiently.
Typical stages:
-
New – When the tester first logs the defect.
-
Assigned – Assigned to a developer for fixing.
-
Open – Developer starts working on the bug.
-
Fixed – Developer fixes and marks it.
-
Retest – QA retests the issue.
-
Verified – If fixed, QA marks it as verified.
-
Closed – Final stage when the issue is completely resolved.
-
Reopen – If the bug still exists during retest.
Example:
A tester finds a crash issue in a payment screen → logs it → developer fixes → QA verifies → closes it.
✅ 42. What is boundary value analysis (BVA)?
Answer:
BVA is a black-box test design technique where testing is performed using input values at the boundaries. The idea is that defects often occur at the edges rather than in the middle of input ranges.
Example:
If a form accepts age from 18 to 60, the boundary values are:
-
Lower boundary: 17, 18, 19
-
Upper boundary: 59, 60, 61
You test using these values to catch issues that appear at the limits.
✅ 43. What is equivalence partitioning (EP)?
Answer:
Equivalence partitioning divides input data into valid and invalid partitions or groups. You then test one value from each group, assuming that all values in a group behave the same.
Example:
For a field that accepts marks from 0 to 100:
-
Valid class: 0–100 (e.g., test with 50)
-
Invalid classes: below 0 (e.g., -1), above 100 (e.g., 110)
This helps reduce the number of test cases without compromising coverage.
✅ 44. What is the difference between QA and QC?
Answer:
-
Quality Assurance (QA) is process-focused. It ensures that the development process is followed correctly to prevent defects.
-
Quality Control (QC) is product-focused. It involves actual testing to detect defects.
Example:
-
QA: Writing a test strategy, reviewing documents, setting up standards.
-
QC: Executing test cases, finding bugs, verifying bug fixes.
✅ 45. What is a use case?
Answer:
A use case describes how a user interacts with a system to achieve a specific goal. It includes steps, inputs, and expected results from the user’s point of view.
Example:
Use Case: "Book a Hotel Room"
Use cases help derive test scenarios and understand user workflows.
✅ 46. What is a test case?
Answer:
A test case is a documented set of steps, inputs, expected results, and conditions to verify a specific functionality of an application.
Format typically includes:
-
Test Case ID
-
Description
-
Preconditions
-
Test Steps
-
Test Data
-
Expected Result
-
Actual Result
-
Status (Pass/Fail)
Example:
Test Case: Verify Login with Valid Credentials
Steps: Enter username → Enter password → Click Login
Expected: User should land on the dashboard.
✅ 47. What is a test scenario?
Answer:
A test scenario is a high-level description of what to test. It represents a real-world functionality or feature without detailing the steps.
It is useful for covering business flows and ensuring end-to-end coverage.
Example:
Test Scenario: Check login functionality
Test Cases:
-
Login with valid credentials
-
Login with invalid password
-
Login with blank fields
-
Login after password reset
✅ 48. What is a test script?
Answer:
A test script is a set of instructions (manual or automated) that performs a test on the application. In manual testing, it's often detailed steps for execution. In automation, it refers to the code written using tools like Selenium, UFT, etc.
Example:
Manual script for login:
-
Launch browser
-
Open login page
-
Enter credentials
-
Click Login
-
Verify redirection to the dashboard
✅ 49. What is the difference between positive and negative testing?
Answer:
Example:
Login Page:
Both types are crucial to ensure stability and robustness.
✅ 50. What is ad-hoc testing?
Answer:
Ad-hoc testing is an informal and unstructured way of testing where testers try to break the system without following any specific test cases or documents.
It’s often done when there is limited time, and it relies on the tester’s understanding and creativity.
Example:
Clicking multiple buttons rapidly, entering special characters in forms, or testing unusual workflows to find bugs.
✅ 51. What is static testing?
Answer:
Static testing involves reviewing the code, requirements, or design documents without executing the program. It helps find defects early in the development process.
Types include:
-
Reviews
-
Walkthroughs
-
Inspections
Example:
A QA reviews requirement documents to ensure all features are covered before test case writing starts.
✅ 52. What is dynamic testing?
Answer:
Dynamic testing involves executing the code and validating the software behavior through test cases. It detects defects by running the application.
Example:
Executing a test case to check if the login functionality works as expected by entering username and password and verifying redirection.
✅ 53. What is a test summary report?
Answer:
A test summary report is a document that summarizes the overall testing effort and results. It is created after the test execution phase and shared with stakeholders.
Contents typically include:
-
Total test cases executed
-
Passed/Failed/Blocked test cases
-
Defects found and status
-
Test coverage
-
Risks or issues faced
-
Conclusion and sign-off status
✅ 54. What is root cause analysis (RCA)?
Answer:
RCA is the process of identifying the underlying reason for a defect or issue. Instead of fixing just the symptom, it focuses on correcting the core cause to prevent future occurrences.
Example:
If multiple users report a crash on submitting a form, RCA might reveal that the backend API was not handling null values in the input, leading to failure.
✅ 55. What is an impact analysis?
Answer:
Impact analysis is done to understand how a code change or bug fix might affect the rest of the application. It helps decide what areas need to be retested (regression).
Example:
If a change is made to the login module, testers will check if dashboards, logout, user profile, and permissions are still working correctly.
✅ 56. What is the role of a test lead?
Answer:
A test lead is responsible for planning, coordinating, and managing the overall testing activities in a project. Key responsibilities include:
-
Creating the test plan and strategy
-
Assigning tasks to testers
-
Managing risks and timelines
-
Reviewing test cases and reports
-
Communicating with stakeholders
✅ 57. What is test closure?
Answer:
Test closure is the final phase of the testing life cycle. It signifies the end of testing and includes activities like:
-
Finalizing test deliverables
-
Preparing the test summary report
-
Archiving test artifacts
-
Conducting retrospectives or lessons learned sessions
✅ 58. What is exploratory vs scripted testing?
Answer:
-
Scripted Testing: Follows predefined test cases and steps.
-
Exploratory Testing: Testers explore the application freely without test scripts, often while learning about the system.
Use Case:
Use scripted testing for stable, repetitive checks (e.g., login), and exploratory testing for new or complex modules.
✅ 59. What is defect triage?
Answer:
Defect triage is a meeting or process where the testing, development, and product teams review, prioritize, and assign defects. It helps decide:
This ensures time is spent fixing the most critical issues first.
✅ 60. What is a test matrix?
Answer:
A test matrix is a table or document that shows the relationship between test cases and requirements. It helps ensure full coverage and traceability.
Example:
A Requirement Traceability Matrix (RTM) is a test matrix that links each requirement to its corresponding test case to verify it was tested.
✅ 61. What is regression testing and why is it important?
Answer:
Regression testing ensures that recent code changes or bug fixes haven’t negatively affected the existing functionality of the application. It’s critical to maintaining application stability over time.
Example:
After fixing a bug in the payment gateway, regression testing is done to ensure that booking, user login, and notifications still work as expected.
✅ 62. When should regression testing be performed?
Answer:
Regression testing should be performed:
-
After bug fixes
-
After new features are added
-
During every release cycle
-
When there are changes in the environment or configurations
This ensures the application remains stable across updates.
✅ 63. What are the different levels of testing?
Answer:
The four main levels are:
-
Unit Testing – Testing individual components (done by developers)
-
Integration Testing – Testing the interaction between modules
-
System Testing – Testing the complete system
-
Acceptance Testing – Verifying if the product meets business needs
Each level increases in complexity and scope.
✅ 64. What is risk-based testing?
Answer:
Risk-based testing focuses on testing the most critical functionalities that are prone to failure or have the highest business impact. It prioritizes testing where the risk of failure is highest.
Example:
In an e-commerce app, payment and checkout functions are tested before UI changes since they are high-risk.
✅ 65. What is smoke testing?
Answer:
Smoke testing is a quick check to verify whether the major functionalities of the application are working after a new build is deployed. If it fails, further testing is halted.
Example:
After a build, testers check if login, home page, and basic navigation work before proceeding to detailed testing.
✅ 66. What is sanity testing?
Answer:
Sanity testing is a focused check to validate that a specific functionality or bug fix works as expected without doing a full regression. It’s narrow and deep.
Example:
If the “Search Hotels” feature was fixed, testers perform sanity testing on only that area to confirm the fix.
✅ 67. What is the difference between smoke and sanity testing?
Answer:
| Feature |
Smoke Testing |
Sanity Testing |
| Scope |
Broad, shallow |
Narrow, deep |
| Purpose |
To accept or reject a build |
To verify a specific fix |
| Performed When |
After new build |
After bug fixes or changes |
Both are subsets of regression testing but with different focus areas.
✅ 68. What is monkey testing?
Answer:
Monkey testing is a type of random, unstructured testing where testers input random actions or data to try and break the system. It's used to test system stability under unpredictable conditions.
Example:
Entering random characters, clicking everywhere rapidly, or performing unusual actions without following business flow.
✅ 69. What is the difference between white box and black box testing?
Answer:
| Type |
White Box Testing |
Black Box Testing |
| Focus |
Internal code logic |
Functionality |
| Done by |
Developers |
Testers |
| Knowledge needed |
Requires code knowledge |
No code knowledge required |
White box checks how the system works internally; black box focuses on outputs from given inputs.
✅ 70. What is gray box testing?
Answer:
Gray box testing combines both white box and black box approaches. Testers know the internal structure but test from an external perspective. It helps optimize test design with partial knowledge of code.
Example:
Knowing how a database handles queries, the tester checks if frontend data filtering works as expected.
✅ 71. What is the difference between manual and automation testing?
Answer:
| Manual Testing |
Automation Testing |
| Performed by humans |
Performed using tools/scripts |
| Time-consuming |
Faster execution |
| Best for exploratory/UI |
Best for regression/load tests |
Automation is faster for repeated tests, but manual testing is better for usability and new features.
✅ 72. What is user acceptance testing (UAT)?
Answer:
UAT is the final phase of testing where actual end-users test the application to confirm it meets their requirements and is ready for release.
Example:
Before launching a billing system, finance staff perform UAT to check if tax calculations and invoice generation meet business needs.
✅ 73. What are the key components of a test case?
Answer:
-
Test Case ID
-
Title/Description
-
Preconditions
-
Test Steps
-
Test Data
-
Expected Result
-
Actual Result
-
Status (Pass/Fail)
-
Remarks (if any)
Each element helps document, track, and validate application behavior.
✅ 74. What is traceability matrix and why is it important?
Answer:
A Traceability Matrix (RTM) maps each requirement to its corresponding test cases. It ensures full test coverage and helps identify missing or redundant tests.
Example:
Requirement R1 → Test Case TC1, TC2
It shows whether all requirements are tested.
✅ 75. What is the difference between testing and debugging?
Answer:
| Activity |
Testing |
Debugging |
| Who does it? |
Testers |
Developers |
| What is it? |
Finding defects |
Fixing root cause of defects |
| Tools used |
Test management tools |
IDEs, debuggers, log analyzers |
Testing identifies bugs; debugging resolves them.
✅ 76. What is configuration testing?
Answer:
Configuration testing checks how the application behaves in different environments or system setups like OS, browsers, screen sizes, etc.
Example:
Verifying if a web app works on Chrome, Firefox, Safari, and Edge across Windows, macOS, and Linux.
✅ 77. What are test artifacts?
Answer:
Test artifacts are all documents and outputs related to testing, including:
-
Test Plan
-
Test Cases
-
Test Data
-
Defect Reports
-
Test Summary Report
-
Traceability Matrix
-
Execution logs
They ensure traceability, reproducibility, and project documentation.
✅ 78. What is the role of a QA tester in an Agile team?
Answer:
In Agile, a QA tester:
-
Collaborates in sprint planning
-
Writes and executes test cases
-
Performs continuous testing during development
-
Involves in daily stand-ups
-
Verifies stories based on acceptance criteria
-
Works closely with developers for faster feedback
QA plays an active role throughout the sprint.
✅ 79. What is environment migration testing?
Answer:
This testing ensures that the application works properly when moved from one environment to another (e.g., Dev → Test → UAT → Prod).
It checks for:
✅ 80. What is the difference between build and release?
Answer:
| Build |
Release |
| Internal version for testing |
External version for end-users |
| Created frequently (daily) |
Happens less often (monthly/weekly) |
| Meant for QA team |
Meant for clients/stakeholders |
Builds are like test drafts; releases are final versions.
✅ 81. What is confirmation testing?
Answer:
Also known as retesting, confirmation testing is performed to verify whether a previously failed test case now passes after the defect is fixed.
Example:
If a "Save" button wasn’t working earlier and was fixed, testers will execute the same test again to confirm the issue is resolved.
✅ 82. What is a blocker bug?
Answer:
A blocker bug is a critical defect that prevents further testing or usage of the application. Until it's fixed, no other testing can continue.
Example:
Login button not working — prevents access to the entire system.
✅ 83. What is a test harness?
Answer:
A test harness is a collection of software and test data used to test an application in an automated way. It includes test scripts, stubs, drivers, etc.
Mostly used in automation or unit testing environments.
✅ 84. What is end-to-end testing?
Answer:
End-to-end testing validates complete business flows from start to finish, ensuring the entire system works as expected.
Example:
User logs in → Searches a product → Adds to cart → Checks out → Gets confirmation email
✅ 85. What is defect clustering?
Answer:
Defect clustering means that most defects tend to be found in a few modules or areas of the application. This follows the Pareto principle (80% of defects come from 20% of the modules).
Use:
Helps prioritize testing effort on the most error-prone modules.
✅ 86. What is pair testing?
Answer:
In pair testing, two team members (typically a tester and developer) work together on the same machine to test and find issues collaboratively.
It helps share knowledge, reduce misunderstandings, and catch issues early.
✅ 87. What is test coverage?
Answer:
Test coverage measures how much of the application's code or functionality has been tested. Higher coverage means better quality assurance.
Types:
-
Requirement coverage
-
Code coverage
-
Path coverage
✅ 88. What are stubs and drivers in testing?
Answer:
Used in integration testing:
They help test incomplete systems.
✅ 89. What is decision table testing?
Answer:
Decision table testing is a technique to handle combinations of inputs and their related outputs. It's useful for validating business rules.
Example:
Loan approval decision based on age, salary, and credit score.
✅ 90. What is state transition testing?
Answer:
This technique is used when the system behaves differently based on previous states. It checks valid/invalid transitions.
Example:
ATM Machine: Card inserted → PIN entered → Transaction selected → Cash dispensed
✅ 91. What is test estimation?
Answer:
Test estimation is predicting the effort required to complete testing tasks. It’s usually based on scope, complexity, resources, and past experience.
Methods:
✅ 92. What is test data management (TDM)?
Answer:
TDM involves creating, maintaining, and managing data required for testing. It includes preparing valid, invalid, and edge data to ensure complete test coverage.
✅ 93. What are the qualities of a good bug report?
Answer:
A good report helps developers fix faster.
✅ 94. What is early testing?
Answer:
Early testing refers to involving QA in the early stages of the SDLC (like requirement gathering or design). It helps catch defects early, saving time and cost.
✅ 95. What is defect masking?
Answer:
Defect masking happens when one defect hides another defect. Fixing one may expose the hidden one.
Example:
A login crash prevents testing further; fixing it may reveal a dashboard bug.
✅ 96. What is defect cascading?
Answer:
Defect cascading occurs when one defect causes another defect in a different module. The impact spreads across the system.
✅ 97. What are different testing deliverables?
Answer:
-
Test Plan
-
Test Cases & Scripts
-
RTM
-
Test Data
-
Defect Reports
-
Test Summary Report
-
Test Metrics
They provide structure, evidence, and traceability.
✅ 98. What is volume testing?
Answer:
Volume testing checks the application performance when handling large amounts of data.
Example:
Uploading 1 million records into a database and verifying performance.
✅ 99. What is soak testing?
Answer:
Soak testing, also called endurance testing, checks if the application can handle expected load for a long time without memory leaks or performance degradation.
✅ 100. What is the difference between bug, error, and failure?
Answer:
-
Error: A mistake in code (by developer)
-
Bug/Defect: A mismatch between expected and actual behavior found during testing
-
Failure: When the system doesn’t perform as intended in production or testing