Introduction Of Software Testing
Software Testing :
- Software : Software is collection of specialized programs which takes users input and generate desire output.
- Testing : It is the process of checking whether the software or application is generating the desired output or not.
- Software Testing : It is the process of checking completeness and correctness of software with respect to client requirements.
What is need of Testing? :
-Bugs/defect could be expensive.
-Bugs can cause monetary losses.
-Reputation is at stake. It can go down if the product/software/application is not working.
-It helps in identification of bug/defect in early stage.
Principles of Software Testing :
There are seven basic Software Testing Principles that every Software tester and QA professional should know.
- 1. Early testing : Start software testing at early stages. Means from beginning when you get the requirements.
- 2. Testing shows presence of defects : Test the software in order to find defect.
- 3. Highly impossible to give the bug free software to the customer.
- 4. Exhaustive testing is not possible : Means we should not use same type of data for testing every time.
- 5. Testing is context dependent : Means Decide what type of testing should be conducted based on type of application.
- 6. Pesticide paradox : Means If you are executing same cases for longer run, they wont be find any defects. We have to keep update test cases in every cycle/release in order to find more defects.
- 7. Defect clustering : Means Some of the modules contains most of the defects. By experience, we can identify such risky modules.
Ways to do Software Testing :
Software Testing can be done in two ways -