Introduction to Automation Testing/Test Automation
1. What is automation testing? / What is test automation?
Process of using automation tool to execute the test suite/test case. Test automation is a use of tool to aid the testing. Automation test execution involves minimal or no manual intervention.
2. When to use automation testing ? / where automation testing is suitable?
- Frequent testing of same areas or regression testing
- Requirements are stable and do not change frequently
- Load and performance testing with virtual users
- Larger scope of testing
3. Explain Test Automation process.
In order to automate the testing, we use software tools and write test scripts. Following steps are followed to automate the testing:
- Identify the areas within software that need testing
- Select the appropriate automation tool
- Setup the automation tool
- Write test scripts
- Develop test suits
- Execute test scripts
- Create a result report
- Identify any potential bugs or performance issues
4. What are advantages of Test Automation/Automation testing?
Below are the advantages of using automation
Faster execution
Once the automation test scripts are ready execution will be faster as test execution is automatically done by the system upon running the script. Automation testing can be completed quickly and hence product can be delivered quickly.
Lesser human resource requirement
Compared to manual testing, less human resource is required as test execution and reporting will be automatically done by the system.
Improved accuracy
As there is minimal or no human intervention during test execution there lesser chance for manual errors.
Re-usability
Automation testing script can be reused for future regression testing.
Reliability
Automated testing is more reliable when running boring repetitive standardized tests, but may cause errors when manually tested.
5. What are Disadvantages of manual testing ?
- Executing test manually is Time Consuming
- Executing same tests again and again manually is Tedious
- Less accuracy and more possibility for error
- Performance testing is impractical in manual testing
- Not Suitable for Large scale and time bounded projects
- Manual testing requires the presence of tester but automated testing can be done round the clock without any intervention
- Comparing large amount of data in case of manual testing is difficult
- Batch testing (executing group of tests) cannot be done manually
- More human resources required
6. List mainly used Test Automation Tools.
There is a wide variety of testing tools that can be used to build and execute automated tests. The following are some mainly used tools for automated software testing.
AutoIT
This tool is used for automating the desktop applications.
HP UFT (formerly known as QTP)
It is developed by HP and it is used for functional and regression testing. It can used for testing both windows and web based applications.
Selenium
Using Selenium, tests can be run for most web browsers. Selenium is open source. It supports many programming languages.
Rational Function Tester: This tool is developed by IBM. This tool allows users to create tests that simulate the actions of a human tester.
HP LoadRunner
This tool is developed by HP, which can be used to test applications for system behavior and performance under load. It is able to simulate a large number of users interacting with the application software at the same time. It records and analyzes performance by simulating this user activity.
SoapUI
It is built on Java platform. This tool is open-source tool created for service-oriented architectures (SOA) and representational state transfers (REST). It can test web service inspection, development, simulation, functional testing, load and compliance testing, and more.
Win runner
It is developed by HP; it is used for automated functional GUI testing, it allows a user to record and play back user interface (UI) interactions as test scripts.