1. Describe the various kinds of software testing.
Ans:
Software testing is mainly divided into manual and automation testing. Manual testing is done by testers without tools, while automation uses scripts and software like Selenium. Both involve functional testing (like unit, integration, system and acceptance) and non-functional testing (such as performance, security, usability and compatibility).
2. What is the Defect Life Cycle?
Ans:
The defect life cycle defines the stages a bug goes through from discovery to closure. It begins as New, then Assigned to a developer, moves to Open, then Fixed and Retested. Once verified, it's marked Closed, but can also be Rejected, Deferred or marked Duplicate based on its status.
3. What’s the difference between validation and verification?
Ans:
Verification checks whether the product is built correctly using reviews and inspections without running the code. Validation ensures the built product meets user needs by testing it in real scenarios. In short, verification is static and validation is dynamic.
4. What are test cases and why are they important?
Ans:
Test cases are step-by-step guidelines created to check whether software functions as expected. They ensure structured testing, consistent results and easy communication among QA teams. Writing clear test cases improves test coverage and helps identify bugs effectively.
5. What is a Test Plan?
Ans:
A test plan outlines the scope, strategy, environment, schedule and tools used during testing. It specifies will test, what will be tested and issues will be handled. It helps teams stay aligned and ensures a high-quality product.
6. How does white-box testing vary from black-box testing?
Ans:
White-box testing involves understanding and testing the internal code and logic, often used for unit tests. It requires programming skills. Black-box testing focuses on input and output without knowledge of internal workings and is used for functional testing.
7. What is regression testing?
Ans:
Regression testing ensures that recent code changes haven’t affected existing features. It's run after bug fixes, updates or enhancements. It helps maintain application stability and prevents old issues from resurfacing.
8. What is Boundary Value Analysis (BVA)?
Ans:
BVA tests the edge values of input ranges where issues are more likely to occur. Values like 0, 1, 100 and 101 are tested for an input range of 1 to 100. It facilitates the effective identification of faults related to boundaries.
9. What is Equivalence Partitioning?
Ans:
Equivalence Partitioning groups similar input values to reduce the number of test cases. If one value in a group works, others are assumed to behave the same. This technique saves time while still maintaining good coverage.
10. How do you prioritize test cases in manual testing?
Ans:
Test cases are ranked according to their frequency of use risk and business impact. Critical features and frequently used functions are tested first. This ensures important bugs are caught early in the process.