Software Testing - Important Questions & Answers
1. What is Software Testing?
Answer: Software Testing is the process of evaluating and verifying that a software product or
application does what it is supposed to do.
2. Why is Software Testing important?
Answer: It helps identify defects, ensures software quality, improves security, and enhances user
satisfaction.
3. What are the different levels of testing?
Answer: Unit Testing, Integration Testing, System Testing, Acceptance Testing.
4. What is Unit Testing?
Answer: Testing individual components or modules of software in isolation.
5. What is Integration Testing?
Answer: Testing the combination of different modules and how they work together.
6. What is System Testing?
Answer: Testing the entire application as a whole to verify it meets requirements.
7. What is Acceptance Testing?
Answer: Ensuring the software meets the business requirements and is ready for release.
8. What are functional and non-functional testing?
Answer: Functional testing checks what the software does, while non-functional testing checks how
it performs.
9. What is Regression Testing?
Answer: Retesting unchanged parts of the application to ensure new changes haven't introduced
defects.
10. What is Smoke Testing?
Answer: A preliminary test to check the basic functionality of an application before deeper testing.
11. What is Alpha Testing?
Answer: Testing performed by internal testers before releasing to users.
12. What is Beta Testing?
Answer: Testing performed by real users in a live environment before final release.
13. What is White Box Testing?
Answer: A testing technique where the internal structure of the code is tested.
14. What is Black Box Testing?
Answer: A testing technique where only inputs and outputs are tested, without knowing the internal
code structure.
15. What is Grey Box Testing?
Answer: A combination of White Box and Black Box testing approaches.
16. What is Exploratory Testing?
Answer: Testing an application without a predefined test plan, exploring its functionality as a user.
17. What is Performance Testing?
Answer: Testing how the application performs under various conditions.
18. What is Load Testing?
Answer: Testing how the system performs under expected load conditions.
19. What is Stress Testing?
Answer: Testing the system under extreme conditions to determine its breaking point.
20. What is Usability Testing?
Answer: Evaluating how easy and user-friendly an application is.
21. What is Security Testing?
Answer: Ensuring the application is secure from potential threats and vulnerabilities.
22. What is Compatibility Testing?
Answer: Checking if the application works on different devices, browsers, and operating systems.
23. What is Automation Testing?
Answer: Using scripts and tools to perform tests automatically.
24. What are some common automation testing tools?
Answer: Selenium, JUnit, TestNG, Cucumber, Appium.
25. What is Manual Testing?
Answer: Testing performed by a human without using automation tools.
26. What is a Test Case?
Answer: A set of conditions used to determine whether an application works as expected.
27. What is a Test Plan?
Answer: A document that outlines the testing strategy, objectives, schedule, and scope.
28. What is a Defect?
Answer: A flaw or error in the software that causes incorrect results.
29. What is the difference between Verification and Validation?
Answer: Verification checks if the product is being built correctly; Validation checks if the right
product is being built.
30. What is Static Testing?
Answer: Testing without executing the code, such as reviewing documents or inspecting code.
31. What is Dynamic Testing?
Answer: Testing that involves executing the application code.
32. What is End-to-End Testing?
Answer: Testing the complete application workflow to ensure everything works together correctly.
33. What is API Testing?
Answer: Testing application programming interfaces (APIs) to verify data exchange between
software systems.
34. What is Agile Testing?
Answer: Testing performed continuously as part of an Agile development process.
35. What is the difference between SDLC and STLC?
Answer: SDLC (Software Development Life Cycle) defines software creation; STLC (Software
Testing Life Cycle) defines testing stages.
36. What is a Bug Life Cycle?
Answer: The different stages a bug goes through: New, Assigned, Open, Fixed, Retested, Verified,
Closed.
37. What is Acceptance Criteria?
Answer: The conditions a product must satisfy to be accepted by the customer.
38. What is a Test Environment?
Answer: A setup of software and hardware where testing is conducted.
39. What is Risk-Based Testing?
Answer: Prioritizing testing efforts based on the potential risk of failure.
40. What is Sanity Testing?
Answer: A quick check to verify that a specific function is working after a minor fix.
41. What is the difference between Retesting and Regression Testing?
Answer: Retesting verifies that a fixed defect is corrected; Regression Testing ensures new changes
don't affect existing functionality.
42. What is Code Coverage?
Answer: A metric that measures how much of the code has been tested.
43. What is Boundary Value Analysis?
Answer: A testing technique that checks edge cases at the boundary limits of input values.
44. What is Equivalence Partitioning?
Answer: Dividing input values into valid and invalid groups for testing.
45. What is Defect Density?
Answer: The number of defects per unit of software (e.g., per thousand lines of code).