What is test automation?
Test automation can mean many things but, for our purposes, we are referring directly to the automation of manual test execution and checking. Specifically around areas of regression where scripts are to be repeated regularly through manual means. Automation is achieved by using an appropriate tool set relevant to the technology under test.
The result is a much more robust end product achieved by ensuring maximised test coverage without an increase to test headcount.
Why is it important?
As development projects increasingly move towards the continuous delivery of software that finds itself quickly in front of the end-user (who can be both demanding and very savvy), it’s essential to ensure that software is as robust as it can be. Automated software testing enables organisations to;
- Reduce time to market through the implementation of automated test suites
- Increase test coverage through automation
- Sanity test new software builds
- Detect defects earlier
- Free up valuable SME resources allowing them time to add more value to the development lifecycle
It’s very easy for an organisation to lose sight of the impact on morale that repetitive work can have on an experienced team. Everyone needs room to be creative and forward thinking in their careers and being burdened with tasks that could easily be automated will only serve to push them closer to the door.
But the decision-makers still need convincing...
Regardless of whether you are mid-project or just beginning to scope out the costs of a new project, it’s tough to justify the cost of test automation if your stakeholders aren’t on board with the idea.
It’s a “could have”, not a “must have”, right? Lots of nodding heads, but no commitment?
Whether or not it’s your responsibility to table test automation solutions as a project requirement, if it affects you or the work of your team, then it’s important that you’re ready to make the case.
So let’s look at some of the common objections and how to overcome them.
“Automated solutions are no replacement for manual testing”
This perception may be more common in the less technically-minded of your stakeholders, but nonetheless it is something you need to address.
You can go about this by highlighting the time that can be saved by automating some testing (but also that this time saved can lead onto great things as your fantastic team will be able to spend their time more effectively).
“It costs too much”
Breaking down the numbers can often help explain complex concepts in a more effective way.
For example, highlight the potential candidates for automation from the manual testing tasks and clearly illustrate how much of the resource allocation and budget goes to that and similar tasks. Those numbers stack up pretty quickly.
“It’s additional work”
Compared to what? Manual testing?
Automated testing is a (relatively) fixed resource cost which usually (or at least, should) occur early on in the project. That initial investment continues to reap rewards as the project progresses whereas manual testing requires ongoing resource commitment. This can be particularly problematic in crisis situations where you need to react quickly to situations that haven’t been planned for.
This is usually the stumbling block. Many organisations understand the benefits of automated testing but are reluctant to implement new processes that they perceive to be disruptive to, or even incompatible with, their existing methodologies.
The challenge here is not getting someone to try something new. It’s getting them to do something differently.
If the person responsible for implementing policy and procedures for your project isn’t open to change, then you are going to have a tough time convincing them. However, most should be at least open to discussion so it’s always worth making the case.
At 2i Testing, we follow a methodology-agnostic approach to creating a test automation framework.
We follow a four stage approach to implementation:
- Investigation – we get to know your project, your methodologies and your team.
- Framework – we create a test automation framework that fits with what you already doing and what you want to achieve.
- Governance – we advise and assist you on how to manage your automation efforts.
- Training – we provide any training required so your team can implement and manage the framework.
Following these simple stages allows us to ensure that every solution we provide suits the environment in which it will be deployed. Our clients have the added bonus of knowing that they have world-class software testing professionals helping ease their testing burden. That’s a much easier sell!
Leaving your test automation framework until it’s too late can be a costly, even fatal mistake for your project.