This site uses cookies and by using the site you are consenting to this. We utilize cookies to optimize our brand’s web presence and website experience. To learn more about cookies, click here to read our privacy statement.

Optimize Your Testing Practices: Automation

Author: Yury Lerner Co-author: Melissa McElroy Posted In: Testing

To kick off the discussion on automation, we once again polled attendees on the maturity of test automation in their organization. The majority of respondents reported using automation within their organization, but many believe they don’t yet have enough coverage and a few respondents haven’t yet implemented automation in their organizations.

Automation in Your Toolbox

Automation should be in every tester’s toolbox. By using automation, testing teams can increase the speed, depth and scope of testing. Tests can be run unattended, even scheduled to run nightly if desired, freeing up testers for more strategic work. Although there is some upfront time investment necessary to establish a strategy and author tests, automation can help reduce expenses while also improving test accuracy and avoiding human error. With automation, you can achieve speed and quality.

Once again, the Three Amigos are relevant. When product owners, developers and testers communicate and collaborate, gaps in communication are closed, enabling teams to explore more business scenarios and implement automation during the development cycle. In an Agile SDLC, automation is owned by the whole team, not just testers. Developers can help with integration work and provide code snippets, helping enable automation activities. Teams can further drive automation in their organizations by including automation in their definition of done. Teams should test incrementally and aim to show immediate value.

What Tools to Use

AI-assisted and scriptless automation opens up a world of possibilities, allowing less technical team members to create and run tests without requiring deep knowledge of coding. Yury did stress that some of these tools are new and can still be expensive but could be the right fit for certain teams. Opensource tools such as Selenium and Katalon enable testers to work more efficiently and are often free or low cost. With opensource tools, your organization can run thousands of tests for free, as well as easily create test cases.

Part of successfully leveraging automation is knowing what tests to run and in what volumes. Many organizations prioritize automated UI testing, which can lead to higher costs, be slower to execute, require more integration in testing environments and result in less reliable tests. UI tests can also be slow, flakey and require a great deal of maintenance, costing your organization money.

Instead, flip the automated test pyramid and focus on automated unit and API testing. By doing so, you can lower costs, execute tests more quickly with more reliable results, and run a large volume of tests with less integration required in testing environments.

Practice TDD, Test Driven Development. TDD enforces the concept of creating tests before the implementation of feature logic, not after, to ensure test development is not forgotten, tests are created every time and new features, logic, and defects receive test coverage. After the actual app logic is implemented, the tests can be executed and hopefully, all pass.

Implementing automation doesn’t have to be costly. Leverage internal resources and existing or free/low-cost tools, prioritize testing functions to automate, and incorporate testing into your DevOps practices.

This article is part of a series on a webinar SPR hosted. The webinar, Doing More with Less: Optimize Your Testing Practices, was presented by SPR’s Yury Lerner and Melissa McElroy. With a focus on doing more with less, topics included Shift Left, AI, Automation and Accessibility.