As you have already seen the importance and principles of testing, now it's time to know the various types of testing and when they get implemented in the SDLC model. So in this chapter, let's learn about the various types of testing:
Manual Testing
In manual testing, software testing is done manually without the use of automated tools or applications available in the market. In this form of testing, the software tester tests or checks for bugs like the end-user and checks the project for identifying any abnormal behavior or bugs in it. Various diverse phases are there for testing a project manually. These are:
- unit-testing
- integration testing
- system testing and
- user acceptance testing
Automation Testing
In automation testing (also termed as Software Test Automation), the software tester has to write different scripts and apply other 3rd party software to test the software. Automation testing involves the manual process done automatically. It is implemented for re-running the test situations and states done manually and at the same time at a fast pace and repeatedly performed to check whether any bug or error is left behind or not from the previous test. This type of testing also deals with checking load, performance stats, CPU and memory usage, and activities. Automation testing is more advantageous than manual testing as it saves the tester's time and money.
Automated Test Tools
Automated testing needs the support of various languages such as VBScript along with automated applications. Various tools are available which can be implemented for writing such scripts. Some of these are:
- TestLink
- Selenium
- IBM Rational Functional Tester
- SoapUI
- Parasoft C/C++test
- Ranorex
- TestComplete
- Test Studio
- Testing Anywhere
- WinRunner
- WebLOAD
- LoadRunner
- Visual Studio Test Professional
- CloudTest
- HP Quick Test Professional
As mentioned above, all these tools are meant for individual languages but for the same purposes, i.e., for testing an application.
Processes and Situations
In various situations, various processes can be used to automate the testing process. These are:
- Identify a different region in software for the automation-test.
- The select proper tool for the automation-test is also essential as each tool is meant for a specific purpose.
- Writing testing scripts.
- Test suits' development.
- Scripts' execution and debugging.
- The results of the test are put into a report.
- Identification of possible bug or issues in software performance.