{"id":373,"date":"2022-05-16T23:08:04","date_gmt":"2022-05-16T23:08:04","guid":{"rendered":"http:\/\/rainforestqa.com\/start-automation-testing-from-scratch\/"},"modified":"2025-03-18T13:11:39","modified_gmt":"2025-03-18T13:11:39","slug":"start-automation-testing-from-scratch","status":"publish","type":"post","link":"https:\/\/www.rainforestqa.com\/blog\/start-automation-testing-from-scratch","title":{"rendered":"How to start automation testing from scratch without code"},"content":{"rendered":"\n<p>Automated software tests are much cheaper to execute, take less time to run, and are less susceptible to human error than manual testing. That\u2019s why most software companies eventually build an automated test suite.&nbsp;<\/p>\n\n\n\n<p>There are many things to consider when first getting started with automated testing, but arguably the most important is choosing the right tool. Choosing the right tool will determine who will be able to write and maintain tests and therefore how quickly and easily you can scale up testing.<\/p>\n\n\n\n<p>Using a <a href=\"https:\/\/www.rainforestqa.com\/no-code-test-automation\" target=\"_blank\" rel=\"noreferrer noopener\">no-code automation testing tool<\/a> that allows anyone to quickly create and edit tests is the most efficient way to scale up testing.\u00a0<\/p>\n\n\n\n<p>A true, no-code test automation tool enables anyone on the product team to quickly create and edit tests so you won\u2019t have to hire additional personnel for testing.&nbsp;<\/p>\n\n\n\n<p>Our tool, Rainforest QA, was specifically designed to let anyone create automated tests without learning a programming language.<\/p>\n\n\n\n<p>In this tutorial, we\u2019ll provide a few resources to help you build structure and direction for your testing efforts. Then, we\u2019ll provide a step-by-step look at how to start automation testing from scratch using Rainforest QA.<\/p>\n\n\n\n<p><em><a href=\"https:\/\/www.rainforestqa.com\/talk-to-sales\" target=\"_blank\" rel=\"noopener\">Talk to us<\/a> about setting up a Rainforest plan that fits your needs.\n<\/em><\/p>\n\n\n\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.rainforestqa.com\/blog\/start-automation-testing-from-scratch\/#Knowing_When_to_Start_and_What_Tests_to_Automate\" >Knowing When to Start and What Tests to Automate<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.rainforestqa.com\/blog\/start-automation-testing-from-scratch\/#Deciding_Which_Test_Cases_to_Automate\" >Deciding Which Test Cases to Automate<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.rainforestqa.com\/blog\/start-automation-testing-from-scratch\/#Choosing_the_Right_Test_Automation_Tool\" >Choosing the Right Test Automation Tool<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.rainforestqa.com\/blog\/start-automation-testing-from-scratch\/#Rainforest_QA_A_True_No-code_Test_Automation_Framework\" >Rainforest QA: A True No-code Test Automation Framework<\/a><\/li><\/ul><\/nav><\/div>\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Knowing_When_to_Start_and_What_Tests_to_Automate\"><\/span>Knowing When to Start and What Tests to Automate<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>While automation can help you do more testing in less time and catch more bugs, you need to determine if your application is ready for automation before building any automated tests.&nbsp;<\/p>\n\n\n\n<p>Whether or not your application is ready for automation largely depends on the stability of your product. If your product is still in the early development phase and major code changes are occurring regularly, it\u2019s not time to automate yet\u2014wait until the application under test is more stable.&nbsp;<\/p>\n\n\n\n<p>If, on the other hand, you have a set of user paths that don\u2019t change very often but get tested frequently (smoke tests or regression tests, for example), it\u2019s likely that automation would be a good fit.<\/p>\n\n\n\n<p>In general, the more <a id=\"\" href=\"https:\/\/www.rainforestqa.com\/blog\/manual-vs-automated-testing\" target=\"_blank\" rel=\"noopener\">automated vs. manual tests<\/a> you have, the more time and money you\u2019ll save\u2014but you can start seeing an impact with just five or ten automated tests. However, some test cases are always a better fit for manual testing, including user paths that:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Experience constant change (e.g., a promotion page)<\/li>\n\n\n\n<li>Require human interpretation (e.g., evaluating the clarity of an image or completing a CAPTCHA)<\/li>\n\n\n\n<li>Have non-deterministic use cases (i.e., if there are multiple, possible correct outcomes from following one path) or complex use cases involving if\/then logic.<\/li>\n<\/ul>\n\n\n\n<p>There are also some types of testing that inherently require human testers:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong id=\"\">Exploratory testing: <\/strong>Where human testers take an unscripted approach to finding bugs that would be missed by all other forms of testing.<strong id=\"\">\u200d<\/strong><\/li>\n\n\n\n<li><strong id=\"\">Usability testing: <\/strong>Which tests the overall user experience as well as how the application meets the needs of the user.<\/li>\n<\/ul>\n\n\n\n<p>Once you\u2019ve determined that your application is ready for automated testing, building a test automation strategy will help you meet your goals quicker and use your resources more efficiently.&nbsp;<\/p>\n\n\n\n<p>You can read more about how to build an automated testing strategy <a id=\"\" href=\"https:\/\/www.rainforestqa.com\/blog\/automated-testing-strategy\" target=\"_blank\" rel=\"noopener\">in this guide<\/a>, but one of the first steps is defining your scope of automation\u2014that is, which test cases, specifically, that you\u2019ll automate.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Deciding_Which_Test_Cases_to_Automate\"><\/span>Deciding Which Test Cases to Automate<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Many teams believe that more testing always leads to better quality, which is understandable because more testing <em id=\"\">can<\/em> mean fewer bugs get shipped to production. <strong id=\"\">However, more testing is not the goal.<\/strong> If you\u2019re not testing the right things, more testing just means more work\u2014especially when it comes to automated testing.&nbsp;<\/p>\n\n\n\n<p>One of the biggest unexpected costs for QA teams is <a id=\"\" href=\"https:\/\/www.rainforestqa.com\/blog\/test-automation-maintenance\/\" target=\"_blank\" rel=\"noopener\">test maintenance<\/a> (i.e., the ongoing task of updating tests to reflect changes and new features in your product). Every automated test inevitably needs to be maintained. That\u2019s why any test that isn\u2019t critical for improving test coverage will likely end up costing more to maintain than it\u2019s worth.&nbsp;<\/p>\n\n\n\n<p>To prioritize our testing, we like to use the analogy of a snowplow. Imagine your app is like a city\u2014all the user paths through the app are like the highways, roads, and side streets of a city. When it snows, the snowplow crew follows a predefined route through the city to clear the most trafficked streets first because they affect the most people. Then, if they have the time and resources, side streets with little traffic may get plowed. Likewise, you should start by building tests along the most critical, highly trafficked user paths of your app.&nbsp;<\/p>\n\n\n\n<p>Additionally, you can prioritize which types of testing you\u2019re going to start with. This makes building an automated testing suite more manageable while also ensuring you get the most out of the tests you do have. The two types of testing you should focus on when you\u2019re just starting out are <a id=\"\" href=\"https:\/\/www.rainforestqa.com\/blog\/how-to-automate-testing\" target=\"_blank\" rel=\"noopener\">smoke testing<\/a> and <a id=\"\" href=\"https:\/\/www.rainforestqa.com\/blog\/automate-regression-testing\/\" target=\"_blank\" rel=\"noopener\">regression testing<\/a>.&nbsp;<\/p>\n\n\n\n<p><a id=\"\" href=\"https:\/\/www.rainforestqa.com\/blog\/automated-smoke-testing\" target=\"_blank\" rel=\"noopener\">Smoke testing<\/a> covers the most essential user paths to make sure the application is stable enough to move on to further testing. This is a good place to start because the sooner in the development process you notice a flawed build, the easier it\u2019ll be to fix it.&nbsp;<\/p>\n\n\n\n<p><a id=\"\" href=\"https:\/\/www.rainforestqa.com\/blog\/automate-regression-testing\/\" target=\"_blank\" rel=\"noopener\">Regression testing<\/a> is usually the last step of the testing process before release. It covers all the critical functionalities of an app and deals with ensuring the new build didn\u2019t introduce a bug. Automating your regression suite is especially important for teams following agile software development practices, as we discuss in this article on <a id=\"\" href=\"https:\/\/www.rainforestqa.com\/blog\/agile-regression-testing\" target=\"_blank\" rel=\"noopener\">agile regression testing<\/a>.&nbsp;<\/p>\n\n\n\n<p>Starting the automation process with even a few smoke or regression tests can save you a significant amount of time and money.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Choosing_the_Right_Test_Automation_Tool\"><\/span>Choosing the Right Test Automation Tool<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Finally, the software testing tool you choose plays a critical role in how easily and quickly you can scale up your testing. We recommend looking for an automated testing tool that:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Lets anyone (even QA beginners) help with QA so you can quickly build a suite of tests without adding headcount.<\/li>\n\n\n\n<li>Is an all-in-one solution so you can manage all aspects of testing from one platform.<\/li>\n\n\n\n<li>Doesn\u2019t have hidden fees so you can scale up or down as your needs demand without paying for more than you need.<\/li>\n<\/ul>\n\n\n\n<p><em id=\"\">To learn more best practices for building an automated testing suite, <\/em><a id=\"\" href=\"https:\/\/www.rainforestqa.com\/method?utm_source=www.google.com&amp;utm_medium=organic&amp;utm_campaign=none\" target=\"_blank\" rel=\"noopener\"><em id=\"\">you can read The Rainforest Method here<\/em><\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Rainforest_QA_A_True_No-code_Test_Automation_Framework\"><\/span>Rainforest QA: A True No-code Test Automation Framework<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Rainforest QA is a no-code <a href=\"https:\/\/www.rainforestqa.com\/blog\/web-application-automated-testing-tools\" target=\"_blank\" rel=\"noreferrer noopener\">test automation platform for web apps<\/a> that lets anyone write and maintain tests. Rainforest\u2019s automated tests interact with software via the UI, mimicking the real user experience. This has several advantages over the method used by tools like Selenium WebDriver or Appium (which is basically Selenium but for iOS and Android apps).<\/p>\n\n\n\n<p>Unlike those tools, which identify elements on the page by finding locator IDs in the underlying code, Rainforest uses pixel-matching to identify and interact with elements in the UI. This means that Rainforest tests actually verify both the functionality of the application <em id=\"\">and<\/em> the appearance at the same time. It also means Rainforest tests are less likely to break when there are minor code changes that don\u2019t affect the UI.&nbsp;<\/p>\n\n\n\n<p>Here\u2019s how it works.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Write and Edit UI tests without a Single Line of Code<\/h3>\n\n\n\n<p>Unlike automated testing tools like Selenium and other open-source tools, Rainforest lets you build an entire test suite without writing a single line of code.<\/p>\n\n\n\n<p>To write or edit a test step, select from a list of preset actions such as click, fill, scroll, etc. Then, use your mouse to take a screenshot of the element you want to apply the action to.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/uploads-ssl.webflow.com\/60da68c37e5767dfb65004c0\/61b250fa0b013466232fafc2_Add%20a%20Click%20Action.gif\" alt=\"Add a Click Action in Rainforest QA: Try for Free button\"\/><\/figure>\n\n\n\n<p>Not only is it easy and straightforward to create any test step, but also anyone looking at a completed test script will be able to understand exactly what\u2019s going to happen. <em id=\"\">(See the left-hand column in the image below.)&nbsp;<\/em><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/uploads-ssl.webflow.com\/60da68c37e5767dfb65004c0\/60da68c37e5767ddc2500932_image3.png\" alt=\"\"\/><\/figure>\n\n\n\n<p>With other user interface test tools, even those that claim to be low-code or codeless tools, you often still need to be able to read and write in JavaScript, Ruby, and sometimes Python to be able to look at a test and know what it\u2019s testing, let alone figure out why it might not be working properly.<\/p>\n\n\n\n<p>To write tests in even less time, you can use embedded tests. Embedded tests let you write a common sequence of steps (a signup process, for example) just once and then insert that sequence into any test that needs it.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/uploads-ssl.webflow.com\/60da68c37e5767dfb65004c0\/61b251d647904d53ca291ea5_quality-assurance-metrics-3.gif\" alt=\"Rainforest Signup Flow: Embed a Test in Rainforest QA\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Manage Automated and Manual Tests from One Platform<\/h3>\n\n\n\n<p>After you\u2019ve built your first suite of tests, you can kick them off whenever you\u2019re ready with one click within the Rainforest platform. Or, you can incorporate your Rainforest tests into your CI\/CD pipeline via our API, CLI, CircleCI Orb, or GitHub Action.&nbsp;<\/p>\n\n\n\n<p>With either setup, you have access to our network of virtual machines running different operating systems and browsers. You can run multiple tests simultaneously.&nbsp;<\/p>\n\n\n\n<p>You also have the option to send the test to our <a id=\"\" href=\"https:\/\/www.rainforestqa.com\/features\/crowdsourced-testing\" target=\"_blank\" rel=\"noopener\">community of worldwide QA experts for testing software manually<\/a>. Many teams find this helpful during the transition from manual to automated testing and for managing manual tests as part of the ongoing testing process.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Understand Test Failures with Video Replays and More<\/h3>\n\n\n\n<p>Without the right automation tool, interpreting test results is often one of the most inconvenient, time-consuming parts of automated testing.&nbsp;<\/p>\n\n\n\n<p>Rainforest, however, makes it easy and fast to understand <em id=\"\">why<\/em> any test failed. With Rainforest, every test gets recorded and stored on the Rainforest platform, whether it passes or fails. This lets you compare a passed test run to a failed one which can be helpful in understanding failures in <a id=\"\" href=\"https:\/\/www.rainforestqa.com\/blog\/flaky-tests\" target=\"_blank\" rel=\"noopener\">flaky tests<\/a>. Video replays also show you everything leading up to the failure.<\/p>\n\n\n\n<p>Next to every video, you\u2019ll see the test steps with failed test steps highlighted in red. Each test step also has an \u2018investigate action\u2019 button which provides further details about how the step was performed.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/uploads-ssl.webflow.com\/60da68c37e5767dfb65004c0\/61b251f89981e91309926115_quality-assurance-metrics-5.gif\" alt=\"Book a Flexible Trip test in Rainforest QA: Action Failed\"\/><\/figure>\n\n\n\n<p>You can download things like HTTP logs, browser logs, settings, and more, for every test.<\/p>\n\n\n\n<p>If you encounter a real bug, our Jira integration lets you integrate debugging into your workflow by sending a ticket to the software development team from right within Rainforest.&nbsp;<\/p>\n\n\n\n<p>The ticket automatically includes steps from the failed test, a screenshot from the failed test step, a link to the video replay, and more information in Rainforest.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">All-in-One Solution<\/h3>\n\n\n\n<p>Many automated testing tools will only offer a way to write and run individual tests, but most teams find they eventually need a way to manage dozens or even hundreds of tests, run multiple tests at once, and communicate more efficiently with everyone on the team.<\/p>\n\n\n\n<p>Rainforest is equipped with everything you\u2019ll need to run and manage a full suite of automated and manual tests, including:&nbsp;<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Test suite management tool for keeping a large number of tests organized.<\/li>\n\n\n\n<li>Access to multiple operating systems and browsers, including current and older versions of Safari, Chrome, Firefox, Internet Explorer, etc.<\/li>\n\n\n\n<li>Built-in test data like randomized email addresses, credit card numbers, names, etc.<\/li>\n\n\n\n<li>Integrations with Slack, Microsoft Teams, and email so your team can get real-time testing reports for test failures, run completions, and more.<\/li>\n\n\n\n<li>Unlimited team members.<\/li>\n<\/ul>\n\n\n\n<p><a href=\"https:\/\/www.rainforestqa.com\/talk-to-sales\" target=\"_blank\" rel=\"noopener\">Talk to us<\/a> about setting up a Rainforest plan that fits your needs.\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>We provide practical guidance on how to start automation testing from scratch and how to choose a test automation tool.<\/p>\n","protected":false},"author":32,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","inline_featured_image":false,"footnotes":""},"categories":[2],"tags":[],"class_list":["post-373","post","type-post","status-publish","format-standard","hentry","category-test-automation"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.rainforestqa.com\/blog\/wp-json\/wp\/v2\/posts\/373","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rainforestqa.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rainforestqa.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rainforestqa.com\/blog\/wp-json\/wp\/v2\/users\/32"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rainforestqa.com\/blog\/wp-json\/wp\/v2\/comments?post=373"}],"version-history":[{"count":11,"href":"https:\/\/www.rainforestqa.com\/blog\/wp-json\/wp\/v2\/posts\/373\/revisions"}],"predecessor-version":[{"id":3064,"href":"https:\/\/www.rainforestqa.com\/blog\/wp-json\/wp\/v2\/posts\/373\/revisions\/3064"}],"wp:attachment":[{"href":"https:\/\/www.rainforestqa.com\/blog\/wp-json\/wp\/v2\/media?parent=373"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rainforestqa.com\/blog\/wp-json\/wp\/v2\/categories?post=373"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rainforestqa.com\/blog\/wp-json\/wp\/v2\/tags?post=373"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}