Software Testing is a critical element of software quality assurance and represents the ultimate process to ensure the correctness of the product.
Software Testing: Testing is the process of executing a program with intent of finding errors.
# What is the purpose of testing:-
-To show the software works: - it is known as demonstrated oriented.
-To show the software doesn’t work: - it is known as destruction oriented.
- To minimize the risk of not working up to acceptable level. It is known as evaluation oriented.
-To show the product is free from defect.
Why do we need test:-
Defect can exist in the software, as it is developed by human who can make mistakes during the development of software. It is the primary duty of a software vendor to ensure that software doesn’t have defect, error free application or product.
# The most common origin of software bug is due to
-Poor understanding and incomplete requirement
-Fast changes in requirement
-Too many assumptions and compliancy
# Approaches to testing:
1. Debug oriented.
2. Demonstration oriented.
3. Evaluation oriented.
4. Prevention oriented.
# Purpose of debugging: Find the error/misconception that led to failure and implement progress changes that correct the error.
# Test Case: - Test case is an identify associated with program behavior it has set of input and list of expected output.
# What is bug: - Software did not operate as intended.
# Importance of Testing:-
-Testing is a critical element of s/w QA.
-Post release removal of defects in the s/w most expensive.
-Significant portion of life cycle effort expanded on testing.
# Mainly Testing Involves:
-Plan for Testing
-Design test conditions, cases.
-Develop test data.
-Create required test environment
-Analyze actual result with expected results.
-Results: Test Passed or Failed.
# Level of Testing:
1. Unit Testing
2. Integration Testing
3. System Testing
4. User Acceptance Testing.