Testing is a process of checking how the software would behave in the time of its run. There are different aspects of testing software. But, generally speaking, testing is done to measure the efficiency, accuracy and possible faults of a software.
There may be major consequences of using software directly officially and directly in commercial or research fields. To test any software it's necessary to make several test cases and deploy them. Test cases are nothing but, set of all possible values and parameters which the software can act upon.
A good test case is the one which is extreme in input for the software. In other words, a good test case should be able to invoke all the functions and modules present in the software and allow the software to work in a virtual environment as if it was deployed in the real environment.
Software testing can be done by, niche software developers to giant software developing companies. Testing is a core part of the developmental phase and without testing, releasing software is like putting a machine in an environment, which was never known to it.
The number of points goes infinite for why we require testing.
In the next article, we will see the different types of testing in detail and see how they can be carried out.