24
Jan

Automation Testing: Process, Planning, Tool Selection – 1

Manual testing is very convenient as compared to Automation testing as it is performed by human who sits in front of computer, while executing the test steps very carefully. Automation Testing refers to usage of automation tools that can execute your test suite. Automation software enters test data into the system under test. It is also responsible for comparing the expected and actual results so as to generate detailed test reports.

If you are planning to choose Automation testing for your product then you need to be prepared for the investments on resources and tools. The development of your product will need execution of same test suite until the final product is made. With the use of test automation tool, it becomes quite easy to record this suite while re-playing it as required by your product. There is no need of human intervention, once test suite is automated. This will eventually help in improving the ROI of Test Automation.

The main objective of Automation tool is to lessen number of test cases when compared with manual testing, hence not eliminating the manual testing all of a sudden.

Why Automated Testing, instead of Manual testing?

Following reasons makes Automation testing significant:

  • Manual Testing of all work flows, all negative scenarios, all fieldsis very much costly and time consuming
  • It is hard to test multi lingual sites manually.
  • Automation tests do not need Human intervention. Automated test can be executed unattended (overnight).
  • Automation rises test execution speed.
  • Automation aids in Test Coverage increase.
  • Manual Testing is quite boring, further leads to many errors

With Automation Testing, Which Test Cases need to Automate?

Following criterion can be used to select the Test cases that need to be automated, to increase the ROI of automation.

  • Business Acute test cases which are at High Risk.
  • Test cases which are executed repeatedly.
  • Test Cases that difficult to perform manually and tedious.
  • Test Cases which are very much time consuming.

Following criteria can’t be considered for test Automation:

  • Test Cases whom requirements change frequently
  • Test cases which are performed on ad-hoc basis
  • Newly designed test cases which are not executed manually at once.

 

What is Automation Process?

Test tool selection:

Selection of the automation tool depends on the technology which the Application under test is built on. To explain with QTP, it does not support Informatica hence cannot be used for testing the Informatica applications. It is always better idea to conduct proof of concept of Tool on AUT.

Scope of Automation:

Scope of automation is defined as the extent of your Application under Test that will be automated. Following points aid in determining scope:

  • Feature that are significant for the business.
  • Scenarios having large amount of data.
  • Common functionalities throughout applications.
  • Technical possibility.
  • Amount to which business components are reused.
  • Complexity amongst test cases.
  • Capability to use the same test cases for cross browser testing.

How are the Planning, Design and Development done?

This is the phase where you create Automation strategy & plan, that has following details-

  • Selection of Automation tools.
  • Design of Framework and its features.
  • In-Scope and Out-of-scope items of automation.
  • Prepared Automation test bed.
  • Timeline and Schedule of execution and scripting.
  • Deliverables of automation testing.

How Test Execution is done?

During this phase, Automation Scripts are executed. The scripts here require input test data; prior they are set to run. Once on complete execution, they provide detailed report.

There are multiple ways of carrying out the execution i.e. through Automation tool, build tool (Maven, Ant, Gradle etc), CI Tool (Teamcity, Jenkins etc) or through Test Management tool, which eventually invokes the automation tool.

For instance take example of QC which is generally referred as Quality Centre. It is basically a test management tool which eventually invokes QTP so as to execute automation scripts. You can execute the scripts on single machine or a group of machines. If you are short of time, then you may execute the scripts during night so that your time will be saved.

Maintenance

Automation Scripts need to be reviewed, added and maintained for each release cycle on addition of new functionalities of System under Test. Maintenance is indeed essential to increase efficiency of Automation Scripts.