{"id":10192,"date":"2018-10-02T20:27:11","date_gmt":"2018-10-02T20:27:11","guid":{"rendered":"http:\/\/abstracta.us\/blog\/?p=10192"},"modified":"2025-05-05T21:23:38","modified_gmt":"2025-05-05T21:23:38","slug":"embracing-ai-based-testing-new-era","status":"publish","type":"post","link":"https:\/\/abstracta.us\/blog\/test-automation\/embracing-ai-based-testing-new-era\/","title":{"rendered":"Embracing AI Based Testing &#8211; The New Era"},"content":{"rendered":"<h1><span style=\"font-weight: 400;\">How can Artificial Intelligence enhance software testing?\u00a0<\/span><\/h1>\n<p><a href=\"http:\/\/abstracta.us\/wp-content\/uploads\/2018\/09\/Screen-Shot-2018-09-29-at-12.32.42-PM-min.png\"><img decoding=\"async\" class=\"aligncenter wp-image-10193 \" src=\"http:\/\/abstracta.us\/wp-content\/uploads\/2018\/09\/Screen-Shot-2018-09-29-at-12.32.42-PM-min.png\" alt=\"robot testing graphic\" width=\"656\" height=\"425\" \/><\/a><\/p>\n<p>Technology has drastically evolved throughout the past decade. Many innovations have deeply influenced our lives such as smartphones, bitcoin, electric cars, and blockchain, but artificial intelligence (AI) definitely tops the list. AI has become vital in analyzing a large amount of unstructured data and identifying different patterns, relationships and perform process optimization in various domains including speech recognition, self-driving cars, computer vision, health care, fintech and now in software testing. We now have the ability to predict future behavior and discover patterns missed by the naked eye with the help of complex models that analyze large amounts of data. This becomes all the more important with the need to support the latest developments in software testing related to Agile Processes, DevOps and CI\/CD integration.<\/p>\n<p><span style=\"font-weight: 400;\">In this digital era, organizations are forced to trade off between faster time to market and good user experience. The current goal for organizations is to run more tests, find bugs fast and release faster. AI can help to achieve this goal.<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"Why_Embrace_AI_Testing\"><\/span><strong><span style=\"color: #00b674;\">Why Embrace AI Testing?<\/span><\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">AI based testing can have a positive impact on several facets of software testing especially test automation. There have been so many different tools and frameworks that have come up trying to solve different kinds of problems related to test automation but one problem that has been a constant challenge till date, is the aspect of \u201cmaintenance\u201d. One of the main reasons for this is the use of static locators.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">With static locators, we use only one attribute of an element to uniquely identify it on a page and if this changes, the test breaks and as testers we end up spending a considerable amount of time troubleshooting the problem and fixing it. Based on research, about 30% of testers\u2019 time is consumed in just maintaining tests. Can you imagine the opportunity cost associated with this effort? It is mind blowing. Testers\u2019 time is valuable and better spent on actually exploring the application and providing information to help stakeholders make informed decisions about the product. With AI based testing we can overcome this problem by using dynamic locators. <\/span><a href=\"https:\/\/blog.testim.io\/bringing-simplicity-to-authoring-and-execution-of-automated-tests\/\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">Dynamic Locators<\/span><\/a><span style=\"font-weight: 400;\"> is a concept where we use multiple attributes of an element to locate it on on the page instead of a single attribute. This way, even if one attribute changes, the element can still be successfully located with the help of other attributes that have already been extracted from the DOM by the AI.<\/span><\/p>\n<p><a href=\"http:\/\/abstracta.us\/wp-content\/uploads\/2018\/09\/machine-learning2.gif\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-10208\" src=\"http:\/\/abstracta.us\/wp-content\/uploads\/2018\/09\/machine-learning2.gif\" alt=\"machine learning GIF\" width=\"772\" height=\"494\" \/><\/a><\/p>\n<p><span style=\"font-weight: 400;\">Now with AI, you can connect your production apps to the testing cycle. This means that we can create tests based on actual flows done by the user in production. Also, the AI can observe and find repeated steps and cluster them to make reusable components in your tests. For Example &#8211; Login, Logout scenarios. Also, the more tests you run, the smarter the AI becomes in terms of identifying flaky tests, optimizing waits in between steps and also proactively fixing issues for us before they occur due to its <\/span><i><span style=\"font-weight: 400;\">self-healing mechanism.<\/span><\/i><\/p>\n<p><span style=\"font-weight: 400;\">The field of test automation has historically been a <\/span><i><span style=\"font-weight: 400;\">technical tester<\/span><\/i><span style=\"font-weight: 400;\"> focused community. This stigma can also change with AI; as it brings the concept of collaboration in test automation. What this means is, non-technical resources no longer need to fear code and technology, rather AI will help to bridge the gap between the technical know-how and authoring and execution of tests making life easier for teams.<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"The_Testers_Role_in_AI_Based_Testing\"><\/span><strong><span style=\"color: #00b674;\">The Tester&#8217;s Role in AI Based Testing<\/span><\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">AI has proven ability to function with more collective intelligence, speed and scale than even the best-funded app teams of today. With Continuous Development setting an ever aggressive pace, and the combined pressure from AI inspired automation, robots, and chatbots, it begs the question that looms in the mind of most likely all software testers: are testing and QA teams under siege? Are QA roles in jeopardy of being phased out or replaced, similar to the manufacturing industry? <\/span><\/p>\n<p><span style=\"font-weight: 400;\">Over the past decade, technologies have evolved drastically, there have been so many changes happening in the technology space but one thing constant is human testers\u2019 interaction with them and how we use them for our needs. The same holds true for AI as well. Secondly, to train the AI, we need good input\/output combinations (which we call a<\/span> <a href=\"https:\/\/en.wikipedia.org\/wiki\/Training,_test,_and_validation_sets\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">training dataset<\/span><\/a><span style=\"font-weight: 400;\">). So to work with modern software we need to choose this training dataset carefully as the AI starts learning from this and starts creating relationships based on what we give to it. Also, it is important to monitor how the AI is learning as we give different training datasets. This is going to be vital to how the software is going to be tested as well. We would still need human involvement in training the AI.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Finally, it is important to ensure while working with AI the security, privacy and ethical aspects of the software are not compromised. All these factors contribute to better testability of the software. We need humans for this too. <\/span><\/p>\n<p>[tweet_box design=&#8221;default&#8221; float=&#8221;none&#8221; inject=&#8221;@tesim_io&#8221;]We&#8217;ll continue to do exploratory testing manually but also use #AI to automate processes. Just like automation tools which do not replace manual testing, it will complement it.[\/tweet_box]<\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">So, contrary to popular belief, the outlook is not all \u2018doom-and-gloom;\u2019 being a real, live human <\/span><i><span style=\"font-weight: 400;\">does <\/span><\/i><span style=\"font-weight: 400;\">have its advantages. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">For instance, human testers can improvise and test without written specifications, differentiate clarity from confusion, and sense when the \u2018look and feel\u2019 of an on-screen component is \u2018off\u2019 or wrong. Complete replacement of manual testers will only happen\u00a0when\u00a0AI\u00a0exceeds those unique qualities of human intellect. There are a myriad of areas that will require in-depth testing to ensure safety, security, and accuracy of all the data-driven technology and apps being created on a daily basis. In this regard, utilizing AI for software testing is still in its infancy with the potential for monumental impact.<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"How_is_AI_Shaping_the_Future\"><\/span><strong><span style=\"color: #00b674;\">How is AI\u00a0Shaping the Future?<\/span><\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><a href=\"http:\/\/abstracta.us\/wp-content\/uploads\/2018\/09\/Screen-Shot-2018-09-29-at-12.44.53-PM-min.png\"><img decoding=\"async\" class=\"aligncenter wp-image-10194 \" src=\"http:\/\/abstracta.us\/wp-content\/uploads\/2018\/09\/Screen-Shot-2018-09-29-at-12.44.53-PM-min.png\" alt=\"AI in testing\" width=\"652\" height=\"335\" \/><\/a><\/p>\n<p><span style=\"font-weight: 400;\">We have discussed the various ways in which AI will influence the field of software testing and help to solve some of the biggest challenges with test automation. In the future, the way we do test automation is going to significantly change in terms of taking a more risk-based approach to software testing.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">AI has the ability to learn from different user flows and create test cases based on actual user data. We no longer have to spend a lot of time to create test data based on production users since the AI is doing it automatically for us. This helps to increase test coverage and makes the automated tests much more effective as they have been created based on real user flows. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">Replacing static locators with dynamic locators is going to make the tests more stable and as a result of this, the authoring and execution of tests is going to be much faster. For example &#8211; Say we have a \u201cCheckout\u201d button and change its name to \u201cBuy\u201d, the tests that would have failed earlier due to the use of a single attribute to locate the element will no longer fail as we will start using dynamic locators and make use of multiple attributes for the same element. Wherein, even if the name of the button changed, the AI will go to the next best attribute to locate the element on the page instead of failing the tests. This saves considerable amount of time maintaining the automated tests.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Also, the more tests the user runs, the more data the AI collects about the test and the more stable the tests become over a period of time. For example &#8211; based on the number of test runs, the AI can start optimizing the wait times in tests to accommodate different page load times in the application.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Finally, test automation is no more a developer-focused task.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">[tweet_box design=&#8221;default&#8221; float=&#8221;none&#8221; inject=&#8221;@testim_io&#8221; excerpt=&#8221;Thanks to #AI, everyone on the team can participate in writing automated tests as their authoring and execution become really simple. @AbstractaUS @testim_io&#8221;]Thanks to #AI, everyone on the team can participate in writing automated tests as their authoring and execution become really simple.[\/tweet_box]<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">Users can record tests on their own and also use the tests that are automatically created by the AI to create effective automated test suites. In this way, even non-technical people can author and write effective tests.<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"Conclusion\"><\/span><strong><span style=\"color: #00b674;\">Conclusion<\/span><\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">With the steady progress being made with AI, the truth remains that mimicking the human brain is no easy task. Humans are the users of apps and the technological innovations that are being created takes into account that, the human understanding, creativity, and contextualization are traits necessary to ensure a quality product. That said, manual testing remains essential and should compliment automation and AI. They are distinct and different functions that, instead of being compared, should be leveraged according to their respective strengths. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">[tweet_box design=&#8221;default&#8221; float=&#8221;none&#8221; inject=&#8221;@testim_io&#8221;]Rather than #AI solutions replacing QA teams, AI can augment software testing and infuse testers with superhuman-like efficiency.[\/tweet_box]<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">What&#8217;s clear is that leaders in the technology industry will continue to dissolve boundaries, discover and innovate with machine learning and AI. As QA teams continue to embrace automation and welcome AI into their software testing practices, the outcomes will contribute to new solutions and ways of working, reinventing what\u2019s possible.<\/span><\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"About_the_Author\"><\/span><strong><span style=\"color: #3056a2;\">About the Author<\/span><\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a href=\"http:\/\/abstracta.us\/wp-content\/uploads\/2018\/09\/Screen-Shot-2018-09-29-at-1.00.17-PM-min.png\"><img decoding=\"async\" class=\"size-full wp-image-10197 alignleft\" src=\"http:\/\/abstracta.us\/wp-content\/uploads\/2018\/09\/Screen-Shot-2018-09-29-at-1.00.17-PM-min.png\" alt=\"Raj Subramanian\" width=\"266\" height=\"265\" \/><\/a><\/p>\n<p><span style=\"font-weight: 400;\">Raj Subramanian is a former developer who moved to testing to focus on his passion. Raj currently works as a Developer Evangelist for Testim.io, that provides stable self-healing AI based test automation to enterprises such as Netapp, Swisscom, Wix and Autodesk. He also provides mobile training and consulting. He actively contributes to the testing community by speaking at conferences, writing articles, blogging, making videos on his youtube channel and being directly involved in various testing-related activities. He currently resides in Chicago and can be found\u00a0on twitter at <a href=\"https:\/\/twitter.com\/epsilon11\" target=\"_blank\" rel=\"noopener\">@epsilon11<\/a>. He actively blogs on <\/span><span style=\"font-weight: 400;\"><a href=\"http:\/\/www.testim.io\/\" target=\"_blank\" rel=\"noopener\">www.testim.io<\/a>\u00a0<\/span><span style=\"font-weight: 400;\">and <\/span><a href=\"http:\/\/www.rajsubra.com\/\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">www.rajsubra.com<\/span><\/a><span style=\"font-weight: 400;\">. His videos on testing, leadership and productivity can be found <a href=\"https:\/\/www.youtube.com\/channel\/UCoeNB2yyzE5WQDKeJCF0iOQ\" target=\"_blank\" rel=\"noopener\">here<\/a>.<\/span><\/p>\n<p><!-- Go to www.addthis.com\/dashboard to customize your tools --><script src=\"\/\/s7.addthis.com\/js\/300\/addthis_widget.js#pubid=ra-58d80a50fc4f926d\" type=\"text\/javascript\"><\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>How can Artificial Intelligence enhance software testing?\u00a0 Technology has drastically evolved throughout the past decade. Many innovations have deeply influenced our lives such as smartphones, bitcoin, electric cars, and blockchain, but artificial intelligence (AI) definitely tops the list. AI has become vital in analyzing a&#8230;<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[60],"tags":[68],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v14.0.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Embracing AI Based Testing - The New Era | Abstracta<\/title>\n<meta name=\"description\" content=\"How can Artificial Intelligence enhance software testing? Hear from Testim.io Developer Evangelist, Raj Subramanian on AI based testing!\" \/>\n<meta name=\"robots\" content=\"index, follow\" \/>\n<meta name=\"googlebot\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta name=\"bingbot\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/abstracta.us\/blog\/test-automation\/embracing-ai-based-testing-new-era\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Embracing AI Based Testing - The New Era | Abstracta\" \/>\n<meta property=\"og:description\" content=\"How can Artificial Intelligence enhance software testing? Hear from Testim.io Developer Evangelist, Raj Subramanian on AI based testing!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/abstracta.us\/blog\/test-automation\/embracing-ai-based-testing-new-era\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog about AI-powered quality engineering for teams building complex software | Abstracta\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/AbstractaQA\/\" \/>\n<meta property=\"article:published_time\" content=\"2018-10-02T20:27:11+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-05-05T21:23:38+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/abstracta.us\/wp-content\/uploads\/2018\/09\/ai-testing.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"560\" \/>\n\t<meta property=\"og:image:height\" content=\"315\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@AbstractaUS\" \/>\n<meta name=\"twitter:site\" content=\"@AbstractaUS\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/abstracta.us\/blog\/#website\",\"url\":\"https:\/\/abstracta.us\/blog\/\",\"name\":\"Blog about AI-powered quality engineering for teams building complex software | Abstracta\",\"description\":\"AI-powered quality engineering\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/abstracta.us\/blog\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/abstracta.us\/blog\/test-automation\/embracing-ai-based-testing-new-era\/#primaryimage\",\"inLanguage\":\"en-US\",\"url\":\"http:\/\/abstracta.us\/wp-content\/uploads\/2018\/09\/Screen-Shot-2018-09-29-at-12.32.42-PM-min.png\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/abstracta.us\/blog\/test-automation\/embracing-ai-based-testing-new-era\/#webpage\",\"url\":\"https:\/\/abstracta.us\/blog\/test-automation\/embracing-ai-based-testing-new-era\/\",\"name\":\"Embracing AI Based Testing - The New Era | Abstracta\",\"isPartOf\":{\"@id\":\"https:\/\/abstracta.us\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/abstracta.us\/blog\/test-automation\/embracing-ai-based-testing-new-era\/#primaryimage\"},\"datePublished\":\"2018-10-02T20:27:11+00:00\",\"dateModified\":\"2025-05-05T21:23:38+00:00\",\"author\":{\"@id\":\"https:\/\/abstracta.us\/blog\/#\/schema\/person\/78cd0dcae50ce820b25e86d3330e9762\"},\"description\":\"How can Artificial Intelligence enhance software testing? Hear from Testim.io Developer Evangelist, Raj Subramanian on AI based testing!\",\"breadcrumb\":{\"@id\":\"https:\/\/abstracta.us\/blog\/test-automation\/embracing-ai-based-testing-new-era\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/abstracta.us\/blog\/test-automation\/embracing-ai-based-testing-new-era\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/abstracta.us\/blog\/test-automation\/embracing-ai-based-testing-new-era\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/abstracta.us\/blog\/\",\"url\":\"https:\/\/abstracta.us\/blog\/\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"position\":2,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/abstracta.us\/blog\/test-automation\/\",\"url\":\"https:\/\/abstracta.us\/blog\/test-automation\/\",\"name\":\"Test Automation\"}},{\"@type\":\"ListItem\",\"position\":3,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/abstracta.us\/blog\/test-automation\/embracing-ai-based-testing-new-era\/\",\"url\":\"https:\/\/abstracta.us\/blog\/test-automation\/embracing-ai-based-testing-new-era\/\",\"name\":\"Embracing AI Based Testing &#8211; The New Era\"}}]},{\"@type\":[\"Person\"],\"@id\":\"https:\/\/abstracta.us\/blog\/#\/schema\/person\/78cd0dcae50ce820b25e86d3330e9762\",\"name\":\"Sof\\u00eda Palamarchuk, Co-CEO at Abstracta\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/abstracta.us\/blog\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/222e8b1136482564fe25acc4de2b9b7a?s=96&d=blank&r=g\",\"caption\":\"Sof\\u00eda Palamarchuk, Co-CEO at Abstracta\"},\"description\":\"Co-Chief Executive Officer at Abstracta\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","_links":{"self":[{"href":"https:\/\/abstracta.us\/blog\/wp-json\/wp\/v2\/posts\/10192"}],"collection":[{"href":"https:\/\/abstracta.us\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/abstracta.us\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/abstracta.us\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/abstracta.us\/blog\/wp-json\/wp\/v2\/comments?post=10192"}],"version-history":[{"count":22,"href":"https:\/\/abstracta.us\/blog\/wp-json\/wp\/v2\/posts\/10192\/revisions"}],"predecessor-version":[{"id":17549,"href":"https:\/\/abstracta.us\/blog\/wp-json\/wp\/v2\/posts\/10192\/revisions\/17549"}],"wp:attachment":[{"href":"https:\/\/abstracta.us\/blog\/wp-json\/wp\/v2\/media?parent=10192"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/abstracta.us\/blog\/wp-json\/wp\/v2\/categories?post=10192"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/abstracta.us\/blog\/wp-json\/wp\/v2\/tags?post=10192"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}