25 April 2017

How to implement automated software testing


Whereas automated software testing was once a domain of cash-rich companies with large teams and even larger budgets, it is now a must-have component of every software quality program that is aiming for success in today's digital age.

The World Quality Report predicts that software testing as a percentage of overall IT spend shows no signs of declining:

Surely this is a compelling reason to change strategies to reign in some of those cost hikes. Software test automation definitely allows you to do this, by maximising the Green Zone.

As our software test automation services and testing tools gained more traction with customers looking for a new and better approach, we found that our customers were making similar mistakes before they started working with us. These mistakes can be largely attributed to a few very common, but incorrect assumptions:
  • Test automation is all about the technology you use;
  • I can sack my entire test team if I automate; and / or
  • Automated testing is all about writing automated scripts for the manual test cases I already have.
Each one of these assumptions is incorrect on its own and if they are all combined to drive a software quality strategy, can lead to very expensive misadventures.

We are asked to explain how to implement automated software testing so often that we decided to share our wisdom in detail, with examples in our Ultimate Guide to Automated Software Testing ebook. If you are short on time, our playbook for implementing automated software testing is a 6-step process:

Step 1: Build a business case & define your goals & strategy

Implementing test automation is an investment in your business. Just like any other business investment, it should be done with a future state in mind. Articulate clear financial and non-financial goals that you would like to achieve and an action plan to achieve them. Our customers' experience has shown us that it is a good idea to get the broader team's buy-in into the process, right from the outset. This helps to address concerns and cultural issues before they start impacting your new initiative.

Step 2: Understand your application ecosystem

Customer-facing digital applications have different quality requirements to ERP applications that are usually used within an organisation. It is relatively easy to take stock of what you already have, but this step requires you to gaze into your crystal ball to understand what your applications ecosystem may look like in the medium to long term. The Ultimate Guide poses three very important questions for this step.

Step 3: Select a web automation engine

In this age of open source, test automation aficionados are spoilt for choice. There are a number of parameters to consider, some of which include:
  • Browser compatability
  • Operating system support
  • Cloud implementation
  • Online body of knowledge
Not all automation engines are created equal and that is why we used Selenium as the basis for web test automation in our testing tool. But, keep in mind that an automation engine really just a set of APIs, not a complete testing tool.

Step 4: Select a mobile automation engine

Automated testing for mobile apps adds complexity that most traditional testing tools simply cannot handle. Not all mobile automation engines can handle both iOS and Android for example. The Ultimate Guide will help you narrow your choice using a table such as this:

Step 5: Select a testing tool

All good software testing tools include test management, planning and execution. Only the best software testing tools also include automated test execution, automated scope selection and comprehensive debugging tools and analytics too. The Ultimate Guide articulates the important parameters that must be considered before investing in any testing technology.

Most people look for the best testing tool in the market. A more fruitful exercise is to work out the parameters that make the a software testing too the best suited to your needs.

Step 6: In-house, outsourced or hybrid

Irrespective of everything you have considered above, a wrong decision at this step could set your test automation ambitions back several steps. Test automation resources can be hard to recruit and retain in some parts of the world. The testing services provider that has worked with your company for years may not be a good fit with the new direction in which you want to travel. Whatever you do, do not make this decision in haste.

Automated software testing is going to be an integral part of your future software delivery strategy and it is a decision that should be considered carefully. Download the Ultimate Guide to gain a detailed understanding of your key decision points. If you prefer talking to reading, speak to us about your goals and challenges:
Or contact us on +61 8 8312 1287 or solutions[at]qsometech.com


Post a Comment