Software testing is an integral part of software development. Often, software development is narrowed down by coding or software testing and testing is one of the vital processes in software development that is often overlooked. Though this process is very important, especially for the development of software that will be mass produced (mass production), which requires quality assurance and error free (bug-free) before entering the production stage. However, for standalone software development or in-house development, the testing process can significantly reduce development costs and maintenance costs.
In making software, of course, we often face “bugs” or “errors” in certain processes. To avoid the many bugs, software testing is needed, before the software that we have made is given to the customer or if the software is still being developed. Basically, the importance of software testing refers to the quality of the software.
Why must maintain software quality?
More and more developers by maintaining the quality of software that is built to survive with other software that continues to grow
- streamline costs so as not to waste a lot of software because of marketing or production failures
- retain customers and increase profits
- important for global marketing.
The following stages of software testing are:
1. Unit Testing is a method of software verification in which the programmer tests a unit program for its feasibility. This unit testing focuses on verification of the smallest unit in software design (components or software modules). Because in a lot of software has small units so to test it usually made a small program or play a program) to test the software units. These small units can be a procedure or function, a set of procedures or functions that exist in one file if in structured programming, or classes, it can also be a collection of classes in one package in a PBO. Unit testing is usually done when the program code is created.
2. Integration Testing is more about testing the integration of two or more units in the software. Integration testing should be carried out in stages to avoid trouble tracking if an error / bug occurs.
3. System Testing Process units that have been integrated are tested with an interface that has been made so that this test is intended to test the software system. It should be remembered that the system testing must be carried out in stages since the beginning of development, if the test is only ended then it can be ascertained that the quality of the system is not good.
4. Acceptance Testing: Testing acceptance of software is carried out by users who have collaborated with program makers in order to know first-hand how the software that has been made can work before the software is made widely distributed. This acceptance test aims to determine user satisfaction or user.
Benefits of Software Testing
When a developer or programmer makes a software, of course, errors will be found in certain processes. It is necessary to test the software before the software you have created is given to the customer.
- Find as many errors as possible from the software being tested
- Making software that is tested, after repairs are done, become quality software
- Conduct testing effectively and efficiently
- Collect errors that occur and use them for preventive action