Software Testing is done to verify if the expected result and actual result are same. It ensures that our system is Bug free. Software Testing also helps in finding if any requirement is missing or wrongly implemented.
Basically Testing is of three types- White box testing, Black box testing and grey box testing.
Software Testing can be done in two ways- manually or with some automated tools.