Software Testing Interview Questions

1. What is the difference between Verification and Validation?
Answer:
  • Verification ensures the product is built correctly (checking documents, design, code).
  • Example: Reviewing design documents or code walkthroughs.
  • Validation ensures the right product is built (checking if it meets user needs).
  • Example: Executing test cases to validate functionality.
2. What are the different levels of testing?
Answer:
  1. Unit Testing – Testing individual components or modules.
  2. Integration Testing – Testing data flow between modules.
  3. System Testing – Testing the complete system as a whole.
  4. Acceptance Testing – Testing the system against business requirements.
3. What is the difference between Functional and Non-functional testing?
Answer:
  • Functional Testing checks what the system does (e.g., login, registration).
  • Non-functional Testing checks how well the system performs (e.g., performance, security, usability).
4. What is Regression Testing and when is it performed?
Answer:

Regression testing is done to ensure that new code changes do not affect existing functionality. It is usually performed after:

  • Code enhancements
  • Bug fixes
  • Integration of new features
5. What is the difference between Smoke and Sanity testing?
Answer:
  • Smoke Testing: A high-level test to check if the major functionalities work (build verification).
  • Sanity Testing: A narrow test to verify specific functionality after changes or bug fixes.