Testing
    
Software testing is an investigation conducted to provide stakeholders with information about the quality of the product or service under test.[1] Software testing can also provide an objective, independent view of the software to allow the business to appreciate and understand the risks of software implementation. Test techniques include, but are not limited to, the process of executing a program or application with the intent of finding software bugs (errors or other defects).
A Software feature can be defined as the changes made in the system to add new functionality or modify the existing functionality. Each feature is said to have a characteristics that is designed to be useful, intuitive and effective.
In reality, a new test set is created for testing that feature corresponding to that cycle of that release. The extremely important and generally used new features ought to be tested thoroughly in each build of that release and also regression testing should be done relevant to those areas.
    
- Understanding the Feature :
-
One Should read the requirement or specification corresponding to that feature .
- Build Test Scenarios :
-
Testers should Develop the test cases exclusively to test the feature. Hence, the coverage, traceability can be maintained.
- Prepare Positive and Negative DataSets :
-
Testers should have the test data covering all possible negative, positive and boundary cases before the start of the testing.
- How it is Implemented :
-
Testers should know how the feature has been implemented on application layer and the relevant changed to the back end if any. This will give us clarity on the impacted areas.
- Deploy the Build Early :
-
Testers should start testing the feature early in the cycle and report the defects and the same process should be repeated throughout the release builds.
Advatages of Testing
- meets the requirements that guided its design and development
- esponds correctly to all kinds of inputs
- performs its functions within an acceptable time
- is sufficiently usable
- can be installed and run in its intended environments
- achieves the general result its stakeholders desire