Automation Testing Vs Manual Testing
In this post, we learn what is Automation Testing vs Manual Testing and Different types of Testing and difference between Automation Testing and Manual Testing.
Automation Testing:
Automation testing is the process of testing the software using an automation tool to find the defects. In this process, executing the test scripts and generating the results are performed automatically by automation tools.
Some of the popular automation testing tools
- HP QTP(Quick Test Professional)/UFT(Unified Functional Testing)
- Selenium
- LoadRunner
- IBM Rational Functional Tester
- SilkTest
- TestComplete
- WinRunner
- WATIR
Manual Testing:
Manual testing is the process of testing the software manually to find the defects. Testers should have the perspective of an end user and to ensure all the features are working as mentioned in the requirement document. In this process, testers execute the test cases and generate the reports manually without using any automation tools.
Types of Manual Testing:
- Black Box Testing
- White Box Testing
- Unit Testing
- System Testing
- Integration Testing
- Acceptance Testing
Black Box Testing: Black Box Testing is a software testing method in which testers evaluate the functionality of the software under test without looking at the internal code structure. This can be applied to every level of software testing such as Unit, Integration, System and Acceptance Testing.
White Box Testing: White Box Testing is also called as Glass Box, Clear Box, and Structural Testing. It is based on applications internal code structure. In white-box testing, an internal perspective of the system, as well as programming skills, are used to design test cases. This testing usually done at the unit level.
Unit Testing: Unit Testing is also called as Module Testing or Component Testing. It is done to check whether the individual unit or module of the source code is working properly. It is done by the developers in developer’s environment.
System Testing: Testing the fully integrated application to evaluate the systems compliance with its specified requirements is called System Testing AKA End to End testing. Verifying the completed system to ensure that the application works as intended or not.
Integration Testing: Integration Testing is the process of testing the interface between the two software units. Integration testing is done by three ways. Big Bang Approach, Top Down Approach, Bottom-Up Approach
Acceptance Testing: It is also known as pre-production testing. This is done by the end users along with the testers to validate the functionality of the application. After successful acceptance testing. Formal testing conducted to determine whether an application is developed as per the requirement. It allows customer to accept or reject the application. Types of acceptance testing are Alpha, Beta & Gamma.
There are many types of software testing but here we dealt mainly about Manual and Automation Testing. Here you could read the complete list of software testing types.
Here I have hand-picked few posts which will help you to learn more interview related stuff:
- Manual Testing Tutorial
- Selenium Tutorial
- TestNG Tutorial
- SQL Tutorial
- VBScript Tutorial
- Agile Tutorial
- Manual Testing Interview Questions
- Selenium Interview Questions
- TestNG Interview Questions
- Explain Test Automation Framework
- Test Automation Framework Interview Questions
- SQL Interview Questions
- Agile Interview Questions
- Why You Choose Software Testing As A Career
- General Interview Questions
If you have any more question, feel free to ask via comments. If you find this post useful, do share it with your friends on Social Networking.
can you please explain stubs and drivers in detail with example
Hi Geetanjali, These terms come into the picture while doing Integration Testing. While working on integration, sometimes we face a situation where some of the functionalities are still under development. So the functionalities which are under development will be replaced with some dummy programs. These dummy programs are named as Stubs or Drivers.
Imagine, we have two pages i.e., Login page and Admin page.
You have to test Login page (assume, Admin page is under development). The login page will call the Admin page after login but the Admin page is not ready yet. To overcome this situation developers write a dummy program which acts as Admin page. This dummy program is AKA Stub.
Stubs are ‘Called programs’. If a ‘Called program’ is incomplete, it is replaced with Stub. (This happens in Top down approach)
Coming to Drivers. In the above example, the Login page is ready but not the Admin page. this time assume that the Admin page is ready to test but the Login page is not ready yet. To overcome this situation developers write a dummy program which acts like Login page. This dummy program is AKA Driver. Drivers are ‘Calling programs’. If a ‘Calling program’ is incomplete, it is replaced with Driver. (This happens in bottom up approach)
Hope you are clear now.
Thanks for such a easy and detailed explanation of Stub and Driver.