{"id":382,"date":"2022-03-03T23:08:04","date_gmt":"2022-03-03T23:08:04","guid":{"rendered":"http:\/\/rainforestqa.com\/user-interface-testing\/"},"modified":"2025-03-18T13:12:58","modified_gmt":"2025-03-18T13:12:58","slug":"user-interface-testing","status":"publish","type":"post","link":"https:\/\/www.rainforestqa.com\/blog\/user-interface-testing","title":{"rendered":"A quick start guide to user interface testing"},"content":{"rendered":"\n<p>User interface testing (sometimes called graphical user interface testing) involves testing software applications according to what the end user will see on their screen and how they\u2019ll interact with it. For example, can you type in text boxes or click the checkboxes? Are fonts, headers, and other visual elements correct?&nbsp;<\/p>\n\n\n\n<p>UI testing can be done manually or with a test automation tool. There are many different types of software test automation tools available, but not all of them perform true UI testing.<\/p>\n\n\n\n<p>We\u2019ve created this post to help you find the best tool for UI testing and to help you get started with UI testing without wasting time or resources. This post will cover:&nbsp;<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>How to Hit the Ground Running with Effective UI Testing&nbsp;<\/li>\n\n\n\n<li>Manual UI Testing (when to use it and how to run it)&nbsp;<\/li>\n\n\n\n<li>Automated UI testing (how to know if you\u2019re ready and types of software available)<\/li>\n\n\n\n<li>Rainforest QA: All-in-one UI Testing Platform&nbsp;&nbsp;<\/li>\n<\/ul>\n\n\n\n<p><em><a href=\"https:\/\/www.rainforestqa.com\/talk-to-sales\">Talk to us<\/a> about Rainforest QA, an all-in-one, no-code automated UI testing tool that can improve your testing without having to add QA headcount.<\/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\/user-interface-testing\/#How_to_Hit_the_Ground_Running_with_Effective_UI_Testing\" >How to Hit the Ground Running with Effective UI Testing<\/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\/user-interface-testing\/#Manual_UI_Testing\" >Manual UI Testing<\/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\/user-interface-testing\/#Automated_UI_Testing\" >Automated UI Testing<\/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\/user-interface-testing\/#%E2%80%8DRainforest_QA_All-in-one_UI_Testing_Platform\" >\u200dRainforest QA: All-in-one UI Testing Platform<\/a><\/li><\/ul><\/nav><\/div>\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"How_to_Hit_the_Ground_Running_with_Effective_UI_Testing\"><\/span>How to Hit the Ground Running with Effective UI Testing<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>It can be tempting to build a few tests and start running them before creating a comprehensive testing strategy or test plan. While some testing can be better than no testing, many teams that follow this approach end up wasting time and resources writing more tests or longer tests than they actually need. We\u2019ve written detailed articles to walk you through each step of creating a test strategy and test plan, but here\u2019s an overview:&nbsp;<\/p>\n\n\n\n<p><a href=\"https:\/\/www.rainforestqa.com\/blog\/automated-testing-strategy\" target=\"_blank\" rel=\"noopener\"><strong>Testing strategy<\/strong><\/a><strong>:<\/strong> A testing strategy helps define your overall testing approach by specifying goals and responsibilities.<\/p>\n\n\n\n<p>In general, you should prioritize your testing efforts around the most important user paths to make sure they\u2019re working properly. We like to use the <a href=\"https:\/\/www.rainforestqa.com\/blog\/automation-test-coverage\" target=\"_blank\" rel=\"noopener\">analogy of a snow plow<\/a> clearing a city\u2019s streets after a snowstorm. The streets that see the most traffic get cleared first, and some of the side streets may never get cleared because so few people travel on them.&nbsp;<\/p>\n\n\n\n<p>The most important paths in your app are the ones the majority of your users follow to get to their desired outcomes (or \u201cdestinations\u201d).&nbsp;<\/p>\n\n\n\n<p><a href=\"https:\/\/www.rainforestqa.com\/blog\/how-to-write-a-test-plan\/\" target=\"_blank\" rel=\"noopener\"><strong>Test plan<\/strong><\/a><strong>:<\/strong> A test plan outlines in detail the objectives, methods, organization, and success criteria for testing user actions.<\/p>\n\n\n\n<p>Taking the time to gather and organize this information <em>before<\/em> you start testing will help you write tests faster and ensure you aren&#8217;t writing unnecessary tests or test steps. It\u2019ll also help ensure your test results are a closer reflection of the actual user experience.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Manual_UI_Testing\"><\/span>Manual UI Testing<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p><a href=\"https:\/\/www.rainforestqa.com\/blog\/manual-vs-automated-testing\" target=\"_blank\" rel=\"noopener\">Manual testing<\/a> takes longer to complete than automated testing, but it\u2019s useful in the right situations. This section will cover two scenarios where it makes sense to use manual testing and your options for performing manual testing.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">When to Use Manual Testing<\/h3>\n\n\n\n<p>Manual testing is any type of testing where someone interacts with the user path being tested \u2014 either by following the steps in a test plan to evaluate a specific feature (i.e., functional testing) or by testing in an unscripted way (i.e., exploratory testing).&nbsp;<\/p>\n\n\n\n<p>One of the main advantages of manual testing is that people are flexible and can quickly adapt testing methods to a frequently-changing application.&nbsp;<\/p>\n\n\n\n<p>This flexibility makes it ideal for the early stages of a software product\u2019s development.&nbsp;<\/p>\n\n\n\n<p>Automated testing, on the other hand, is best for fairly stable features because changes to the product usually mean you\u2019ll need to update the corresponding automated tests, as well. And that can be laborious and require technical expertise, depending on the automation tool you use.<\/p>\n\n\n\n<p>Manual testing is also a good fit for short-term projects or for features that are scheduled to be phased out. Automated testing often requires more initial setup time, which may not be worth it for a test with a short lifespan.<\/p>\n\n\n\n<p>Finally, with manual testing, you can test features that require human interpretation or judgment. Need to assess the quality of images on your website or complete CAPTCHAs? Manual testing is your best bet.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Options for Managing and Running Manual Tests<\/h3>\n\n\n\n<p>You can do manual testing in-house with your own team or outsource it to a <a href=\"https:\/\/www.rainforestqa.com\/blog\/applause-vs-rainforest-qa\" target=\"_blank\" rel=\"noopener\">manual testing service<\/a>.<\/p>\n\n\n\n<p>\u200d<a href=\"https:\/\/www.rainforestqa.com\/blog\/manual-software-testing-services\/\" target=\"_blank\" rel=\"noopener\">Many of these services<\/a> will take over the majority of your manual testing for you \u2014 including creating your test plan and strategy. While this may sound helpful, this means you\u2019re trusting someone outside your team to understand your goals and processes well enough to provide valuable testing results.&nbsp;<\/p>\n\n\n\n<p>We\u2019ve found that the process moves faster and provides far more valuable results if you first design your QA strategy and test plan internally. That\u2019ll set you up for success with a manual testing service. <a href=\"https:\/\/www.rainforestqa.com\/blog\/user-interface-testing#rainforest-qa\">Later in this article<\/a>, we\u2019ll show how our community of testers provides some of the fastest manual testing available while also supporting your process and goals.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Automated_UI_Testing\"><\/span>Automated UI Testing<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Although manual testing is useful for certain testing scenarios, test automation is often the better choice. As soon as you start running the same test multiple times (as with regression testing), manual testing presents a lot of downsides:&nbsp;<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>It\u2019s time-consuming and slow compared to automated tests.<\/li>\n\n\n\n<li>It\u2019s typically more expensive to execute on a per-hour basis because it relies on human resources instead of cheap computer processing power.<\/li>\n\n\n\n<li>It\u2019s prone to human error in the execution of the tests, in part due to the deficits in attention that come with performing the same rote tasks over and over.<\/li>\n\n\n\n<li>Bugs found during manual testing can be hard for developers to reproduce because of variations between the tester\u2019s and the developer\u2019s testing environments.<\/li>\n<\/ul>\n\n\n\n<p>Automated testing, on the other hand, has several advantages, including:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>More consistent test results:<\/strong> Each test step is performed the same way every time, and computers don\u2019t make mistakes due to attention fatigue.<\/li>\n\n\n\n<li><strong>Faster, simultaneous testing:<\/strong> Multiple tests can be performed at the same time and in less time.<\/li>\n\n\n\n<li><strong>Inexpensive testing:<\/strong> Running automated tests often costs much less than paying for manual testing.<\/li>\n<\/ul>\n\n\n\n<p>One of the biggest advantages of automated testing is that you can complete test runs more often. More frequent testing typically means there\u2019s less new code to evaluate in each test run, which means issues are easier to isolate and debug.&nbsp;<\/p>\n\n\n\n<p>Frequent testing also means you\u2019ll find bugs sooner after the code was written. The code will be fresher in your developers\u2019 minds and they\u2019ll have an easier time remembering the assumptions and decisions they made.&nbsp;&nbsp;<\/p>\n\n\n\n<p>The main downside of automation testing is that someone on the team will have to spend time maintaining the tests to reflect any changes you make to your product. But choosing the right software testing tool can help you speed up maintenance, and applying a few key testing techniques (such as writing fewer tests) can help <a rel=\"noopener\" href=\"https:\/\/www.rainforestqa.com\/blog\/test-automation-maintenance\/\" target=\"_blank\">reduce the amount of maintenance needed<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">How to Know If You\u2019re Ready for Automated UI Testing<\/h3>\n\n\n\n<p>If your product is still in early development and lots of major code changes are happening on a regular basis, it\u2019s not time to automate yet \u2014 wait until the application is more stable.&nbsp;<\/p>\n\n\n\n<p>If, however, your application is fairly stable or if you have a consistent series of tests that don&#8217;t change very often and get run frequently (such as smoke or regression tests), it\u2019s likely that automation could save you a lot of time and money.<\/p>\n\n\n\n<p>Automation may also be a good option if you want to release code faster or more frequently, but manual testing has become a bottleneck.<\/p>\n\n\n\n<p>While any kind of automated testing will likely save you time, many of the available tools use an outdated approach and can be frustrating to use.&nbsp;<\/p>\n\n\n\n<p>In the next section, I\u2019ll briefly discuss the types of testing tools that are available.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Types of Automated Software Testing Tools<\/h3>\n\n\n\n<p>Most automated <a href=\"https:\/\/www.rainforestqa.com\/blog\/ui-testing-tools\" target=\"_blank\" rel=\"noopener\">UI testing tools<\/a> fall into two categories: code-based tools and no-code (or low-code) tools. Choosing the right one will determine how quickly you can scale up your testing suite and how easy it is to maintain your testing suite.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Code-based Tools<\/h4>\n\n\n\n<p>Code-based tools use code written in a testing framework (such as <a href=\"https:\/\/www.rainforestqa.com\/blog\/selenium-alternatives\/\" target=\"_blank\" rel=\"noopener\">Selenium<\/a>) to automate interactions with a software application within a browser.&nbsp;<\/p>\n\n\n\n<p>The test searches for locator IDs within the app\u2019s code that represent specific parts, or UI elements, of the application (like a button). If the locator ID is found, the test assumes the element is visible to the user and the test passes.&nbsp;<\/p>\n\n\n\n<p>When customers interact with your app, they\u2019re not interacting with the underlying code of the application directly \u2014 they\u2019re interacting with a visual representation of the underlying code. This visual representation, not the underlying code, is what\u2019s known as the user interface. Any software that tests the underlying code is testing a proxy for the UI, but it\u2019s not actually running UI tests \u2014 even if it claims to.&nbsp;<\/p>\n\n\n\n<p><strong>Only software that tests the visual layer of the application can truly perform automated UI testing.<\/strong><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">No-code (and Low-code) Tools<\/h4>\n\n\n\n<p>Most no-code or low-code software testing tools simply generate testing code for you using a record-and-playback method or a library of shorthand actions.&nbsp;<\/p>\n\n\n\n<p>In the record-and-playback approach, the testing tool records your actions as you manually interact with the functionality you want to test. The tool records your interactions as a coded script, which is executed any time you want to run the test.&nbsp;<\/p>\n\n\n\n<p>Other tools let you insert pre-written lines of testing code by choosing from a drop-down list of actions such as \u201cfind\u201d or \u201cclick\u201d.&nbsp;<\/p>\n\n\n\n<p>Because these tools are still using code to test your application, they run into many of the same problems as code-based tools:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Eventually you\u2019ll need someone with programming skills to understand <em>why<\/em> tests failed or to create complex test scenarios. The cost of software engineers\u2019 salaries can be one of the most expensive aspects of testing.<\/li>\n\n\n\n<li>Tests are susceptible to breaking due to changes in the app\u2019s underlying code that don\u2019t affect the UI. (Has a locator ID changed? Any affected tests will need to be updated.)<\/li>\n\n\n\n<li>You might miss visual bugs that a real user would notice immediately. For example, the element you\u2019re testing for could be present in the code but is rendered off-screen, where the user can\u2019t see it.<\/li>\n<\/ul>\n\n\n\n<p>To avoid these problems, you\u2019ll need a tool that tests the actual UI of your application \u2014 not the underlying code. <strong>Rainforest QA is one of the only true no-code tools that tests your application\u2019s visual layer.<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"%E2%80%8DRainforest_QA_All-in-one_UI_Testing_Platform\"><\/span>\u200dRainforest QA: All-in-one UI Testing Platform<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Instead of searching for locators in the underlying code, Rainforest\u2019s automated tests use <strong>pixel-matching<\/strong> to verify that an element is <em>actually<\/em> visible in the UI. This approach best-represents how your end users will interact with your app.&nbsp;<\/p>\n\n\n\n<p>Using our approach to <a href=\"https:\/\/www.rainforestqa.com\/blog\/codeless-automation-testing\" target=\"_blank\" rel=\"noreferrer noopener\">codeless test automation<\/a>, you can create test steps by selecting from a menu of actions (i.e. click, fill, scroll, etc.) and by taking screenshots 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=\"Adding a click action in Rainforest QA\"\/><\/figure>\n\n\n\n<p>You can preview your test steps at any time and you\u2019ll see them automatically interact with the live version of your app in the preview screen.<\/p>\n\n\n\n<p>Anyone can create and follow along with the tests \u2014 with or without technical experience. If you do know how to program, the Rainforest editor will allow you to create tests faster than you\u2019d be able to with code-based tools.&nbsp;<\/p>\n\n\n\n<p>Rainforest also offers the ability to embed one test in another for fast test creation and maintenance. This means you can create just one test for signing up, for example, and embed that test in every other test that requires a login step.&nbsp;<\/p>\n\n\n\n<p>Here\u2019s an example of how we embed a \u2018Rainforest Signup Flow\u2019 test into another test (it includes every action from clicking the \u2018Try for Free\u2019 button through verifying that a \u2018Successful\u2019 message will appear):&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 Actions: Try for Free Button\"\/><\/figure>\n\n\n\n<p>If any steps in the signup flow need to be updated (due to a product change, for example), we can update the test in just one place and it\u2019ll automatically be updated in every single test that has the \u201cRainforest Signup Flow\u201d test embedded in it.&nbsp;<\/p>\n\n\n\n<p>Then, when you\u2019re ready to test your application, you can launch multiple tests at once with the click of a button in the Rainforest platform, or a developer can kick off your test suite via our API or command line interface (CLI). All of the tests in your test suite will be run simultaneously on our network of virtual machines for maximum speed of results.<\/p>\n\n\n\n<p><strong>By using Rainforest test automation, you can get test results back in less than four minutes, on average.&nbsp;<\/strong><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Easily Identify Test Failures<\/h3>\n\n\n\n<p>Determining <em>why<\/em> certain tests failed is often one of the most time-consuming aspects of the testing process \u2014 particularly when using software that tests the underlying code.&nbsp;<\/p>\n\n\n\n<p>In contrast, Rainforest QA makes debugging easy by including all of the following for every failed test:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A red highlight of the failed test step&nbsp;<\/li>\n\n\n\n<li>A video recording of the entire test&nbsp;<\/li>\n\n\n\n<li>HTTP logs<\/li>\n\n\n\n<li>Browser logs<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/uploads-ssl.webflow.com\/60da68c37e5767dfb65004c0\/61b250280b013443202f9bdd_quality-assurance-metrics-4.png\" alt=\"Rainforest Signup Flow: Element Mismatch\"\/><\/figure>\n\n\n\n<p>Rainforest QA also integrates with Jira, so you can automatically create a ticket for your development team for any identified bugs that should be addressed.<\/p>\n\n\n\n<p>If the test failure was caused by a broken test rather than a bug, anyone can quickly update the test.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Manage Manual Testing and Test Automation from One Platform<\/h3>\n\n\n\n<p>As I mentioned above, some UI tests are better suited for manual testing. However, few software testing tools offer solutions for both manual <em>and<\/em> automated testing, and it can be a hassle to manage the two approaches separately. That\u2019s why we combine solutions for automated testing and manual testing in one platform.&nbsp;<\/p>\n\n\n\n<p>Any tests written using our visual editor can be run using the automation service or by sending it to our worldwide community of QA specialists for manual testing. Our QA testers are available on-demand, 24&#215;7, and each of them has been with us for a minimum of five years.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/uploads-ssl.webflow.com\/60da68c37e5767dfb65004c0\/622135c7d9e27f0fa3efdc94_run-method.png\" alt=\"Run Method in Rainforest QA: Automation Service, Tester Community, On-Premise Testers\"\/><\/figure>\n\n\n\n<p>You also have the option to write test scripts for manual testing in plain-text English:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/uploads-ssl.webflow.com\/60da68c37e5767dfb65004c0\/61bd101bdafee21f5496034a_applause-vs-rainforest-qa-1.png\" alt=\"Download\/Upload File in Rainforest QA: Writing Test Scripts in Plain-Text\"\/><\/figure>\n\n\n\n<p>Once you send your test suite to the tester community, each test gets run by at least two specialists to make sure their results agree. (We add more testers, as needed, to confirm results.) Much as we do for automated tests, we run all of the manual tests in your suite at the same time to give you faster results.&nbsp;<\/p>\n\n\n\n<p><strong>Manual testing results are returned on average within 17 minutes, which, to our knowledge, is the fastest in the industry.<\/strong><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Only Pay for What You Need with Our All-in-One Software<\/h3>\n\n\n\n<p>With many software testing tools, you\u2019ll need to purchase additional software and solutions, like a testing grid to run your tests on or test management tool to keep things organized.<\/p>\n\n\n\n<p><strong>Rainforest QA is an all-in-one platform, meaning we provide everything you need<\/strong> to manage a large suite of test cases and run them quickly enough to prevent testing from causing a bottleneck in your CI\/CD pipeline. That includes a cloud-based network of virtual machines to run your tests on; integrations with Slack, Microsoft Teams, Jira, and more; and a test management system for organizing and categorizing your tests and test failures.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Get Started with User Interface Testing Using Rainforest QA<\/h3>\n\n\n\n<p>With Rainforest QA, anyone can automate and maintain user interface tests without learning a new programming language. Whether they&#8217;re using our tester community or automated tests, QA teams can create and run tests fast enough to keep up with agile development teams and teams doing continuous integration and continuous delivery.<\/p>\n\n\n\n<p>It\u2019s a scalable, all-in-one test automation solution that\u2019s appropriate for small teams just getting started with automated GUI testing or QA-mature testing teams regularly running 500+ software tests.<\/p>\n\n\n\n<p><a href=\"https:\/\/www.rainforestqa.com\/talk-to-sales\">Talk to us<\/a> about setting up a Rainforest plan that fits your UI testing needs.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Not all user interface testing tools perform true UI testing. This post will help you get started with the right tool, without wasting resources.<\/p>\n","protected":false},"author":28,"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-382","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\/382","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\/28"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rainforestqa.com\/blog\/wp-json\/wp\/v2\/comments?post=382"}],"version-history":[{"count":14,"href":"https:\/\/www.rainforestqa.com\/blog\/wp-json\/wp\/v2\/posts\/382\/revisions"}],"predecessor-version":[{"id":3070,"href":"https:\/\/www.rainforestqa.com\/blog\/wp-json\/wp\/v2\/posts\/382\/revisions\/3070"}],"wp:attachment":[{"href":"https:\/\/www.rainforestqa.com\/blog\/wp-json\/wp\/v2\/media?parent=382"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rainforestqa.com\/blog\/wp-json\/wp\/v2\/categories?post=382"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rainforestqa.com\/blog\/wp-json\/wp\/v2\/tags?post=382"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}