{"id":27535,"date":"2015-10-08T13:05:26","date_gmt":"2015-10-08T07:35:26","guid":{"rendered":"http:\/\/www.tothenew.com\/blog\/?p=27535"},"modified":"2022-01-10T16:52:36","modified_gmt":"2022-01-10T11:22:36","slug":"the-when-how-of-test-automation","status":"publish","type":"post","link":"https:\/\/www.tothenew.com\/blog\/the-when-how-of-test-automation\/","title":{"rendered":"What, When &amp; How of Automation Testing"},"content":{"rendered":"<p>We always think that The Test Automation is a magical formula to improve the quality of applications from the beginning of application development. But when we actually start with automation, then is the time we realize the real situation. More often, we face many challenges\u00a0like<\/p>\n<ul>\n<li>when to start automation,<\/li>\n<li>what to automate,<\/li>\n<li>selection of right tool<\/li>\n<li>development of automation scripts following best practices.<\/li>\n<\/ul>\n<p>So Lets discuss all this in detail &#8211;<\/p>\n<h2><strong>What is Automation Testing?<\/strong><\/h2>\n<p>It is a process in which automation tools run the tests suite, predefined actions on a software application, reporting outcomes, comparative\u00a0results and generate detailed test reports.<\/p>\n<p>Test Automation demands investments of money and resources, development life-cycles, repetitive execution. But when we actually start the automation we need to define the right-time for automation, scope of automation and right-tool for automation. If this exercise is not done well, then it can be very expensive.<\/p>\n<h2><strong>When to Start Test Automation?<\/strong><\/h2>\n<p>There are many situations, when\u00a0you realize that Automation Testing must be done:<\/p>\n<p>1) To Optimize the Speed &amp; Efficiency<\/p>\n<p>2) To Increase the Quality and Decrease the Cost<br \/>\nIn software development processes,\u00a0time-to-market is\u00a0always on priority. Automation test design for Regression testing, <a title=\"Functionality Testing Services\" href=\"http:\/\/www.tothenew.com\/testing\/automated-independent-manual-testing\">Functionality testing<\/a>, Re-testing the existing modules, so that auto-scripts run fast and frequently. It&#8217;ll surely reduce the time, cost and increase the speed.<\/p>\n<p>3) When there is a repetition or a\u00a0need to run the test cases a lot number of times in a test cycle.<\/p>\n<p>4) When there are number of test cases under one test-suite<br \/>\nIn this case\u00a0you&#8217;ll feel tired after executing each test cases from that test suite, then automation can provide you better results.<\/p>\n<p>5) When there is a requirement of running the test cases in a defined order<br \/>\nWhile doing software testing, there are scenarios in which you need to test specific feature\/module before the others. To achieve this in manual testing its required to remember the order, or you&#8217;ll write the order in some other file(.doc, txt, excel) and will refer that. But with automated testing, you can design the scripts in such manner as per our needs.<\/p>\n<p>6) To Increase the Test Coverage<br \/>\nAs a human, there are some areas remain left while doing Regression\/Retesting. So Automation test helps you to cover all test cases for each module.<\/p>\n<p>7) When you need to run the same test cases on different machines at the same time<br \/>\nWhen there is a requirement to run the same set of test cases simultaneously on multiple machine, then automation is your answer. Under manual testing process, you cannot execute same test case at the same time on several machines.<\/p>\n<p>8) When you need to test single functionality with multiple data sets.<br \/>\nAt the time of testing process, you need to run the same test case with multiple data. Then data driven automation testing framework comes in picture to minimize your effort &amp; time. The data is fetch from an external source (e.g. Excel) and pass the multiple and big-size data to each test case. In manual testing, you get bored of testing same functionality and chances of error can increases.<\/p>\n<p>9) When you need to run Regression\/Sanity\/Smoke Test Suite<br \/>\nRegression test suite consists selected number of test cases, which need to be tested after every defect fix cycle. For regression\/sanity testing there is a <a title=\"Automation Testing Services\" href=\"http:\/\/www.tothenew.com\/testing\/automated-independent-manual-testing\">need of automation testing<\/a>, because:<br \/>\ni)\u00a0Its test cases never\/rarely change.<br \/>\nii)\u00a0Repeated execution of test-cases (after each new functionality).<\/p>\n<p>10) Generation of Detailed Reports<br \/>\nMostly all automated testing tools generate test reports automatically once the testing cycle completes. This eases the job of identifying defects and allow the test team to make decision to reliability of the product. So Automation is the solution<\/p>\n<p>You should refer this cycle before starting with automation:<\/p>\n<div id=\"attachment_27775\" style=\"width: 870px\" class=\"wp-caption aligncenter\"><img aria-describedby=\"caption-attachment-27775\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-27775 size-full\" src=\"\/blog\/wp-ttn-blog\/uploads\/2015\/10\/Pre-Automation-Cycle_blog.jpg\" alt=\"\" width=\"860\" height=\"354\" \/><p id=\"caption-attachment-27775\" class=\"wp-caption-text\">Fig.1: The pre-automation-cycle<\/p><\/div>\n<h2><strong>How to start Automation?<\/strong><\/h2>\n<p>Even if all the above situations makes sense\u00a0to go for Automation Testing, the fact is you&#8217;ll need resources to process it successfully. There are important steps on which an Expert test team should pay attention in an Automation Process:<\/p>\n<p><strong>1) Selection of Automation Test Tool<\/strong><br \/>\nIt mainly depends on the technology of that Application Under Test(AUT) to which you are planning to Automate. It&#8217;ll great if you do conduct Proof of Concept of Tool first, thus you can ensure that test coverage can be maximize.<br \/>\nSome popular automation tools are:<br \/>\ni)\u00a0QTP : HP&#8217;s Quick Test Professional &#8211; functional testing tool which support for both Web &amp; Desktop Applications<br \/>\nii)\u00a0Rational Robot : IBM tool for regression, functional testing for ERP, E-Commerce Applications<br \/>\niii)\u00a0Selenium: An open source automated testing suite for web applications supports mostly all browsers<\/p>\n<p>A widely used Automation Test Tool specifically for applications based on Angular.js is Protractor, here&#8217;s a link to a webinar on the basics of Automation Testing using Protractor:<\/p>\n<p><strong>2) Scope of Automation<\/strong><\/p>\n<p>It consists the area of your Application Under Test which you are planning to automate, like:<br \/>\ni)\u00a0Is your application stable enough to automate<br \/>\nii)\u00a0Common functionality through out the application<br \/>\niii)\u00a0When large amount of data is used as Test Inputs<br \/>\niv)\u00a0Complex Test Cases<br \/>\nv)\u00a0Re-testing\/Regression Testing<\/p>\n<p>3) Planning, Design and Development<br \/>\nIn this phase you do planning for Automation, design, create strategy which includes-<br \/>\ni) Design of Framework<br \/>\nii) What to cover in Automation and what not<br \/>\niii)\u00a0Following scripting standards<br \/>\niv)\u00a0Create Generic functions for Common Steps<br \/>\nv)\u00a0Execution of test cases independently<br \/>\nvi)\u00a0Test data<br \/>\nvii)\u00a0Schedule and Time line of Deliverables for automation testing<br \/>\nviii)\u00a0Make flexibility in scripts &amp; code<br \/>\nix)\u00a0User Friendliness<\/p>\n<p><span style=\"text-decoration: underline;\">Conclusion<\/span><br \/>\nTo make Test Automation a successful exercise, you need\u00a0to select Right Automation Tools, an Expert Team and a well structured plan. You need to give proper time and efforts to development of test automation suite.<\/p>\n<p>I hope you will find this information useful \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>We always think that The Test Automation is a magical formula to improve the quality of applications from the beginning of application development. But when we actually start with automation, then is the time we realize the real situation. More often, we face many challenges\u00a0like when to start automation, what to automate, selection of right [&hellip;]<\/p>\n","protected":false},"author":201,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"iawp_total_views":11},"categories":[1818],"tags":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts\/27535"}],"collection":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/users\/201"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/comments?post=27535"}],"version-history":[{"count":1,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts\/27535\/revisions"}],"predecessor-version":[{"id":54474,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts\/27535\/revisions\/54474"}],"wp:attachment":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/media?parent=27535"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/categories?post=27535"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/tags?post=27535"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}