Let’s understand the Objective and Purpose of Software Testing in Software Development. Major objectives for performing Software Testing are: to ensure that the application meets the business and user requirements; to catch errors that can be bugs or defects; to determining user acceptability; to ensuring that a system is ready for use; to gaining confidence that it works; evaluating the capabilities of a system to show that a system performs as intended; and verifying documentation.
Software testing is designing test cases with the higher probability of finding errors. In order to ensure this test cases shall be effective, The number of errors reported per defined number of test cases is quite indicative of this objective. Higher the number better tests objective met.
Software testing should ensure that user accepts the final software released for him to operate with no complaints. In order to fulfill this objective, the tester should have end-user mindset which would help him in writing test cases or scenarios to meet user expectations.
Software Testing shall allow gaining confidence that it works. This would happen when system testing proves that the system is reliable and does not crash or there will be no show stoppers.
Software testing shall evaluate the capabilities of a system to show that a system performs as intended. This allows us to understand the limits of performance, land also learning what a system is able to do and not able to do . For the user with good knowledge of the system, the results from the system shall be predictable.
Software testing shall also verify documentation. Many documents are created and also, evolve throughout software development lifecycle. Along with this, there can be an on-line help, installation, and troubleshooting related, user training related documents. Software testing shall evaluate all these documents for correctness.