{"id":2779,"date":"2020-03-01T18:12:17","date_gmt":"2020-03-01T18:12:17","guid":{"rendered":"https:\/\/codoid.com\/feasibility-analysis-in-qa-automation\/"},"modified":"2022-10-26T09:04:12","modified_gmt":"2022-10-26T09:04:12","slug":"feasibility-analysis-in-qa-automation","status":"publish","type":"post","link":"https:\/\/codoid.com\/automation-testing\/feasibility-analysis-in-qa-automation\/","title":{"rendered":"Feasibility Analysis in QA Automation"},"content":{"rendered":"<p>In this blog we are going to discuss the <a href=\"https:\/\/codoid.com\/automation-testing-services\/\">software test automation<\/a> lifecycle followed by the feasibility analysis that is required. The feasibility study is a must before taking any action with the automation since it is the deciding factor for automation sign-off based on the value that is going to add to the business.<\/p>\n<h3>Life cycle of Software Test Automation<\/h3>\n<p>Life Cycle in <b>layman definition<\/b> is the series of steps\/changes that happens in a process to get the desired result.<\/p>\n<p>Life cycle denotes the subsequent actions in a timely fashion. Below are the lists of things to be considered for <a href=\"https:\/\/codoid.com\/automation-testing-in-ci-cd-pipeline\/\" target=\"_blank\" rel=\"noopener noreferrer\">test automation life cycle<\/a>.<\/p>\n<p><i class=\"fa fa-check\" aria-hidden=\"true\"><\/i> Feasibility study<\/p>\n<p><i class=\"fa fa-check\" aria-hidden=\"true\"><\/i> Tool identification<\/p>\n<p><i class=\"fa fa-check\" aria-hidden=\"true\"><\/i> Framework identification<\/p>\n<p><i class=\"fa fa-check\" aria-hidden=\"true\"><\/i> Proof of concept<\/p>\n<p><i class=\"fa fa-check\" aria-hidden=\"true\"><\/i> Test scripts design<\/p>\n<p><i class=\"fa fa-check\" aria-hidden=\"true\"><\/i> Test scripts execution<\/p>\n<p><i class=\"fa fa-check\" aria-hidden=\"true\"><\/i> Test scripts review<\/p>\n<h3>Feasibility analysis &#038; its significance<\/h3>\n<p>As discussed at the start, the feasibility study is something without which we can\u2019t judge the <b>outcome of automation efforts<\/b> also can\u2019t identify the right automation candidate. This study helps the test team in the forecast on the following activities.<\/p>\n<p><i class=\"fa fa-thumbs-o-up\" aria-hidden=\"true\"><\/i> Can the application be automated or not?<\/p>\n<p><i class=\"fa fa-thumbs-o-up\" aria-hidden=\"true\"><\/i> What type of tool\/ test automation framework can be used?<\/p>\n<p><i class=\"fa fa-thumbs-o-up\" aria-hidden=\"true\"><\/i> How much automation is possible?<\/p>\n<p><i class=\"fa fa-thumbs-o-up\" aria-hidden=\"true\"><\/i> In spite of high efforts, what\u2019s the value add in automating?<\/p>\n<p>Below are some key parameters while performing the feasibility study, let\u2019s look into each one of them in brief<\/p>\n<h3>Feasibility study on the application and understand the functional flow<\/h3>\n<p>Before we proceed with automating any application, the automation tester must possess the knowledge of the application. Without having this understanding when any test scenario is considered for automation and we may get into several problems and the task either would be left incomplete or likely delayed.<\/p>\n<p>As an automation tester the focus would be to gain sufficient functional knowledge, <b>get the relevant test cases from the functional (manual) team<\/b> then conduct feasibility analysis to know how many scenarios can be automated. If at all some cases can\u2019t be automated there must be a valid rationale and the agreement with the stakeholders must be taken.<\/p>\n<p>The analysis helps the test team to showcase their deliverables because after thorough examination team will be in a position to understand what will be covered in automation and how long they require to complete them. Failing to conduct this study could <a href=\"https:\/\/www.thefreedictionary.com\/irksome\" target=\"_blank\" rel=\"noopener noreferrer\">lead to irksome state<\/a>.<\/p>\n<h3>Feasibility study in tool selection<\/h3>\n<p>We must conduct a careful study before finalizing the tool. The key points to be considered are<\/p>\n<p><b>Whether or not the tool can detect all the objects of an application?<\/b><\/p>\n<p>The tool that we are going to use for automation must be able to locate all the elements of the application as the locators are the key for the script <a href=\"https:\/\/codoid.com\/common-selenium-automation-challenges\/\" target=\"_blank\" rel=\"noopener noreferrer\">to interact with the application elements<\/a><\/p>\n<p>In case of selenium, we rely on Xpath, CSS selectors, name, Id..etc<\/p>\n<p>If the case is to automate the windows application then selection of a tool that can interact with windows must be chosen<\/p>\n<p><b>Eg: Coded UI<\/b> \u2013 can locate the windows much better.<\/p>\n<p><b>Whether or not the tool is best compatible with the application technologies?<\/b><\/p>\n<p>There should be a sample POC conducted with all the list of proposed tools to automate the applications then decide which one should be of the good match by considering the application development technologies and its compatibility with the tool.<\/p>\n<p><b>Eg:<\/b> while selenium is used to automate all the java, .net, PHP oriented applications, it\u2019s essential to opt for protractor when the application front end is mainly designed with Angular JS. Because angular elements can\u2019t be caught with selenium<\/p>\n<p>Whilst choosing the tool, the cost that would be required for investment should be taken care of. If at all there is a tool exists which does the job w\/o any degradation of quality we can fairly go with that as that\u2019s going to add a lot of savings, which will eventually prefer to get better ROI.<\/p>\n<p>Community that\u2019s available for that tool, should be given the importance to an extent as that helps in troubleshooting some of the issues we see in our daily routines.<\/p>\n<p>More the community more preferable the tool is<\/p>\n<h3>Feasibility study on framework development<\/h3>\n<p>Once the tool choice has come to a conclusion, the next step is <b>to perform the study on framework piece<\/b>. It should be chosen in a way that the tool supports also it should be quite generic. It should give us better reports to analyze the results<\/p>\n<p>A POC has to be conducted, then after observed the results, we must think of coming up with more reusable components. We might take a lot of hours of time than what is really required for manual validation. But in the long run, as we pass by different phases, the suite adds a lot of value since the execution time will come down to a great level.<\/p>\n<p>A proper check on <a href=\"https:\/\/codoid.com\/what-is-regression-testing\/\" target=\"_blank\" rel=\"noopener noreferrer\">the regression scripts<\/a> and baselining them is needed as well because that helps to add more coverage.<\/p>\n<h3>Feasibility study on test strategical approach<\/h3>\n<p>When it comes to the test approach, the business should take a call whether what between the below strategies should be followed.<\/p>\n<p><b>Test driven approach<\/b><\/p>\n<p>This approach is first to write the tests and then try to accomplish the fix for it. This would be a sophisticated approach and it\u2019s not that easy for non-technical stakeholders to decipher properly. This is completely a call taken by the business based on their budget and other parameters that make sense for a project.<\/p>\n<p><b>Behavior driven approach<\/b><\/p>\n<p>This is buzzing in recent times, as the progress is made by documenting the task in plain English then try to map them with the technical actions. This gives more insight into what a particular test case was written for, what validations are performed. This business model delivers a <a href=\"https:\/\/codoid.com\/test-automation-reporting-tools\/\">better report<\/a> than the above model.<\/p>\n<p><b>Eg:<\/b> Cucumber, Specflow, Gauge..etc<\/p>\n<h3>Feasibility study on infrastructure availability<\/h3>\n<p>In order to proceed with hassle-free automation the test team must not have any issues at infra level, the possible issues that might fall under this category are<\/p>\n<p><i class=\"fa fa-check-square-o\" aria-hidden=\"true\"><\/i> Not having access to create project\/ branch in a chosen configuration management tool<\/p>\n<p><i class=\"fa fa-check-square-o\" aria-hidden=\"true\"><\/i> Not having access to the application\/ DB servers to work independently<\/p>\n<p><i class=\"fa fa-check-square-o\" aria-hidden=\"true\"><\/i> Software license procurement by the business<\/p>\n<p><i class=\"fa fa-check-square-o\" aria-hidden=\"true\"><\/i> Network availability and kind of access to Application, which will delay the execution and cause failures at times<\/p>\n<p><i class=\"fa fa-check-square-o\" aria-hidden=\"true\"><\/i> Not holding admin rights to perform certain tasks<\/p>\n<p>The above-listed problems will prohibit automation activities from point to point. Test team must raise the access requests to all the needed things in the project and gain access.<\/p>\n<p><b>Stable environment and a major part of development should be completed<\/b><\/p>\n<p>As a test team we should know when to automate a particular application. If the build quality is at an infancy stage, we see the basic smoke tests are failing then there is no point in automating the test cases at that stage.<\/p>\n<p>When we go for automation when the major development is in progress, we end up adding a lot of maintenance to the test suite as the <a href=\"https:\/\/codoid.com\/selenium-4-relative-locator\/\" target=\"_blank\" rel=\"noopener noreferrer\">UI locator elements<\/a>  might get changed often or at times there are some changes expected at functional level, then we may need to re-write the scripts as per new design which is tedious.<\/p>\n<p><b>Assessing how much automation can be achieved<\/b><\/p>\n<p>100% automation is fallacy! Given the complexities of whether or not they are technical or no-technical, that may occur during automation development. <\/p>\n<p>As an automation tester doing this exercise helps the business understand the index of cost and effort saving. Ideally, this is achieved by <b>comparing the functional test cases with the automation test cases<\/b>. This metric defines what percentage of the tests has been automated and accordingly, the savings were understood.<\/p>\n<h3>Calculating the ROI metrics<\/h3>\n<p>Metrics are key numbers, which will denote the status, progress, outcome in various ways. As a test engineer\/ development engineer when we bother about the accomplishment of tasks, but the management always looks at the numbers extracted as metrics. This is one short and explainable way of presenting data to understand where we are? What have we achieved?<\/p>\n<p>In the same way, in automation world we have certain metrics to be calculated to project the savings to the business, following are a couple of quick examples<\/p>\n<p><b>Automation savings<\/b><\/p>\n<p>This is to understand how much time in man-hours and effort saved because of bringing in automation <\/p>\n<blockquote><p><b>Savings = Manual test efforts &#8211; Automation test efforts<\/b><\/p><\/blockquote>\n<p><b>Return on investments <\/b><\/p>\n<p>Certainly we are investing during automation in the means of script development, managing talents and the cost of procuring the infrastructure that\u2019s needed.<\/p>\n<blockquote><p><b>Cost of automation investments = Cost of talents + Cost of script development and maintenance + Cost of infrastructure.<\/b><\/p><\/blockquote>\n<h3>Conclusion<\/h3>\n<p>More the ROI, the more the profits and that is what business needed as well. In order to achieve better ROI, we should focus on below<\/p>\n<p><i class=\"fa fa-check-circle-o\" aria-hidden=\"true\"><\/i> Try to bring in more automation<\/p>\n<p><i class=\"fa fa-check-circle-o\" aria-hidden=\"true\"><\/i> Focus of in-sprint automation development<\/p>\n<p><i class=\"fa fa-check-circle-o\" aria-hidden=\"true\"><\/i> Right choice of tools, which will incur no or as minimal budget as possible<\/p>\n<p><i class=\"fa fa-check-circle-o\" aria-hidden=\"true\"><\/i> Develop a generic framework with more reusable components, to avoid extra and often maintenance<\/p>\n<p><\/br><\/p>\n<h3 class=\"text-center\"> Frequently Asked Questions<\/h3>\n<div class=\"faq-section\">\n\r\n            \r\n              <ul class=\"accordion\"><li>\r\n                  <span class=\"toggle\">What is Automation Feasibility in Software Testing?<\/span>\r\n                  <div class=\"inner \" style=\"\" >\r\n                    <p>Automation feasibility analysis is the process of determining what test cases should be automated based on factors such as the required tools or frameworks, infrastructural availability, ROI, and so on.  <br \/>\r\n<\/p>\r\n                  <\/div>\r\n                <\/li><li>\r\n                  <span class=\"toggle\">Which are the Factors to be considered to justify the Feasibility of Automation?<\/span>\r\n                  <div class=\"inner \" style=\"\" >\r\n                    <p>Major factors to be considered during feasibility analysis are ROI, available infrastructure, test strategy, tool & framework being used, availability of time, repetitive nature & complexity of the test cases, and so on. <br \/>\r\n<\/p>\r\n                  <\/div>\r\n                <\/li><li>\r\n                  <span class=\"toggle\">Why is Automation Feasibility Analysis important?<\/span>\r\n                  <div class=\"inner \" style=\"\" >\r\n                    <p>It is known that 100% Automation is not possible. But in a few cases, not all test cases that can be automated should also be automated due to various factors. So starting automation testing without a feasibility analysis would make the process inefficient.<\/p>\r\n                  <\/div>\r\n                <\/li><li>\r\n                  <span class=\"toggle\">What is an RPA Feasibility study?<\/span>\r\n                  <div class=\"inner \" style=\"\" >\r\n                    <p>An RPA Feasibility study is the process of analyzing the technical feasibility of automating a process after thoroughly examining the step-by-step process right down to the most minute detail<\/p>\r\n                  <\/div>\r\n                <\/li><li>\r\n                  <span class=\"toggle\">Why do Automation Projects Fail?<\/span>\r\n                  <div class=\"inner \" style=\"\" >\r\n                    <p>Most Automation testing projects fail due to a lack of clarity on which test cases have to be automated, usage of wrong tools, lack of automation goals, and the skill to achieve those goals. An automation feasibility study ensures that your team overcomes such issues.<\/p>\r\n                  <\/div>\r\n                <\/li><\/ul>\r\n            \n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>In this blog we are going to discuss the software test automation lifecycle followed by the feasibility analysis that is required. The feasibility study is a must before taking any action with the automation since it is the deciding factor for automation sign-off based on the value that is going to add to the business. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":5404,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_et_pb_use_builder":"","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"categories":[182,179,20],"tags":[],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.3 (Yoast SEO v20.3) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Feasibility Analysis in QA Automation - Codoid<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Feasibility Analysis in QA Automation\" \/>\n<meta property=\"og:description\" content=\"In this blog we are going to discuss the software test automation lifecycle followed by the feasibility analysis that is required. The feasibility study is a must before taking any action with the automation since it is the deciding factor for automation sign-off based on the value that is going to add to the business. [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/codoid.com\/learn\/automation-testing\/feasibility-analysis-in-qa-automation\/\" \/>\n<meta property=\"og:site_name\" content=\"Codoid\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/codoid.softwaretestingcompany\" \/>\n<meta property=\"article:published_time\" content=\"2020-03-01T18:12:17+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-10-26T09:04:12+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/codoid.com\/wp-content\/uploads\/2020\/03\/Feasibility_Analysis_in_QA_Automation_Blog.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"800\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@codoid\" \/>\n<meta name=\"twitter:site\" content=\"@codoid\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Feasibility Analysis in QA Automation - Codoid","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"en_US","og_type":"article","og_title":"Feasibility Analysis in QA Automation","og_description":"In this blog we are going to discuss the software test automation lifecycle followed by the feasibility analysis that is required. The feasibility study is a must before taking any action with the automation since it is the deciding factor for automation sign-off based on the value that is going to add to the business. [&hellip;]","og_url":"https:\/\/codoid.com\/learn\/automation-testing\/feasibility-analysis-in-qa-automation\/","og_site_name":"Codoid","article_publisher":"https:\/\/www.facebook.com\/codoid.softwaretestingcompany","article_published_time":"2020-03-01T18:12:17+00:00","article_modified_time":"2022-10-26T09:04:12+00:00","og_image":[{"width":1200,"height":800,"url":"https:\/\/codoid.com\/wp-content\/uploads\/2020\/03\/Feasibility_Analysis_in_QA_Automation_Blog.jpg","type":"image\/jpeg"}],"author":"admin","twitter_card":"summary_large_image","twitter_creator":"@codoid","twitter_site":"@codoid","twitter_misc":{"Written by":"admin","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/codoid.com\/learn\/automation-testing\/feasibility-analysis-in-qa-automation\/#article","isPartOf":{"@id":"https:\/\/codoid.com\/learn\/automation-testing\/feasibility-analysis-in-qa-automation\/"},"author":{"name":"admin","@id":"https:\/\/codoid.com\/#\/schema\/person\/360ee1d38151acb7c746787fbfa8e586"},"headline":"Feasibility Analysis in QA Automation","datePublished":"2020-03-01T18:12:17+00:00","dateModified":"2022-10-26T09:04:12+00:00","mainEntityOfPage":{"@id":"https:\/\/codoid.com\/learn\/automation-testing\/feasibility-analysis-in-qa-automation\/"},"wordCount":1527,"commentCount":0,"publisher":{"@id":"https:\/\/codoid.com\/#organization"},"articleSection":["Automation Testing","Fixed","Blog"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/codoid.com\/learn\/automation-testing\/feasibility-analysis-in-qa-automation\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/codoid.com\/learn\/automation-testing\/feasibility-analysis-in-qa-automation\/","url":"https:\/\/codoid.com\/learn\/automation-testing\/feasibility-analysis-in-qa-automation\/","name":"Feasibility Analysis in QA Automation - Codoid","isPartOf":{"@id":"https:\/\/codoid.com\/#website"},"datePublished":"2020-03-01T18:12:17+00:00","dateModified":"2022-10-26T09:04:12+00:00","breadcrumb":{"@id":"https:\/\/codoid.com\/learn\/automation-testing\/feasibility-analysis-in-qa-automation\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/codoid.com\/learn\/automation-testing\/feasibility-analysis-in-qa-automation\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/codoid.com\/learn\/automation-testing\/feasibility-analysis-in-qa-automation\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/codoid.com\/"},{"@type":"ListItem","position":2,"name":"Feasibility Analysis in QA Automation"}]},{"@type":"WebSite","@id":"https:\/\/codoid.com\/#website","url":"https:\/\/codoid.com\/","name":"Codoid","description":"","publisher":{"@id":"https:\/\/codoid.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/codoid.com\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/codoid.com\/#organization","name":"Codoid - Software Testing Company","url":"https:\/\/codoid.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/codoid.com\/#\/schema\/logo\/image\/","url":"https:\/\/codoid.com\/wp-content\/uploads\/2020\/09\/Codoid_Software_Testing_Company_Logo.png","contentUrl":"https:\/\/codoid.com\/wp-content\/uploads\/2020\/09\/Codoid_Software_Testing_Company_Logo.png","width":500,"height":500,"caption":"Codoid - Software Testing Company"},"image":{"@id":"https:\/\/codoid.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/codoid.softwaretestingcompany","https:\/\/twitter.com\/codoid","https:\/\/www.instagram.com\/codoid.softwaretestingcompany\/","https:\/\/www.linkedin.com\/company\/codoid-qacompany","https:\/\/www.pinterest.com\/codoid9282\/codoid-software-testing-company\/","https:\/\/www.youtube.com\/channel\/UCCmOTDQgcf4W8oo22mBMUYA"]},{"@type":"Person","@id":"https:\/\/codoid.com\/#\/schema\/person\/360ee1d38151acb7c746787fbfa8e586","name":"admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/codoid.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/4d33f9036c9d60684b9478f738779823?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4d33f9036c9d60684b9478f738779823?s=96&d=mm&r=g","caption":"admin"},"sameAs":["https:\/\/codoid.com"]}]}},"_links":{"self":[{"href":"https:\/\/codoid.com\/wp-json\/wp\/v2\/posts\/2779"}],"collection":[{"href":"https:\/\/codoid.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/codoid.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/codoid.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/codoid.com\/wp-json\/wp\/v2\/comments?post=2779"}],"version-history":[{"count":7,"href":"https:\/\/codoid.com\/wp-json\/wp\/v2\/posts\/2779\/revisions"}],"predecessor-version":[{"id":11731,"href":"https:\/\/codoid.com\/wp-json\/wp\/v2\/posts\/2779\/revisions\/11731"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/codoid.com\/wp-json\/wp\/v2\/media\/5404"}],"wp:attachment":[{"href":"https:\/\/codoid.com\/wp-json\/wp\/v2\/media?parent=2779"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/codoid.com\/wp-json\/wp\/v2\/categories?post=2779"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/codoid.com\/wp-json\/wp\/v2\/tags?post=2779"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}