Hey! I'm sure you are aware of the stages in software development - Planning, Analysis, Design, Development, Implementation, Testing, and Deployment. Once the software has been designed, developed and implemented, it has to be tested. It has to be tested it works as expected. If you not obviously, you need to make changes and correct the system.
So when you ask what exactly is being tested?
The software functionality, performance, efficiency, unit functionality, unit performance, integration effects, user acceptance, localization, globalization, interoperability, endurance, load, scalability, usability, etc. all of this is being tested.
There are two types of software testing - Black box testing and White box testing.
There are different methods of testing - Manual testing and Automated testing.
Manual testing: As the name suggests, the testing is done manually by humans, carefully executing steps to test the system. This method has many loopholes. Since it's done by humans, there are high chances that things go south. With the growth in automation, software testing also became easier and more precise.
What is Automated testing?
Manual Testing is performed by a human sitting in front of a computer carefully executing the test steps. Automation Testing means using an automation tool to execute your test case suite. The automation software can also enter test data into the System Under Test, compare expected and actual results and generate detailed test reports. Test Automation demands considerable investments of money and resources.