No argument that traditional Test automation has an important role to play in product development – but ask yourself this do you really love it?
Let me paint a picture – first, you invest thousands of dollars in modern test automation tools. You then invest in resources that can use those tools. Then you automate each test case by writing lines and lines of code that then needs to be maintained. On to phase 2 – as happens often the business needs then change and as a consequence, the automation code has to be updated. Almost inevitably either the product’s go to market date gets pushed or an unreliable version is released just to stick to the timeline. Does that sound familiar so far?
Even assuming the project goes on schedule the maintenance of the code presents its own challenges – have you allowed for the costs of maintaining it? As the code passes from one automation expert to the other and each rewrite and updates occur are you creating poorly engineered code? What happens when the automation expert who worked on the code quits? Need we even ask if you are still loving traditional test automation?
These situations exist in most test automation projects. As a community, perhaps, we have to come to accept that such situations are part of the deal. The question is do they have to? This article will try to set out how a scriptless approach could make test automation a more pleasurable experience and perhaps make you fall in love with it all over again.
1. Bid goodbye to tool specific coding
Scriptless makes the underlying test automation tool invisible. It sits between the user and the automation tool and allows the user to build automation using simple English. The scriptless framework compiles this in a fashion the automation tool understands. Since the scriptless approach is independent of the underlying test automation tool and yet collaborates with it seamlessly it gives users the freedom to change the automation tool later without having to worry about the test scripts.
2. Automate at first sight (or at-least faster)
Scriptless eliminates the need of complex programming - hence, you can automate test cases significantly faster. Need we say more!
3. It’s a moneysaver
You build automation with the scriptless approach leaving the automation tool to completely focus on increasing throughput and executing the regression tests. By some estimates this allows 2 licenses to execute as many regression cycles as used to be earlier executed by 5 licenses – a significant saving in itself. The other saving is in the resource profile and deployment in the new automation team - a smaller number of test automation experts and a team of manual testers can build and manage large scale automation projects.
4. Everybody loves a low maintenance relationship
The Scriptless approach helps you adapt to changing business needs easily. The reduced resource and tool dependency is key as also the guide to critical dependencies of such changes throughout the automation life cycle – decision making is faster and better informed.
5. A Product that stands the test of time
Quite simple really, more coverage = a better tested product. Since the scriptless framework on run time compiles an automated test case into what the test tool will understand, there is no chance to hard code test cases to report success.
6. Highly tested automation code
The scriptless approach is built on a philosophy of building automation which is not AUT specific but UI object class specific. So for an AUT with 500 textboxes in its UI all actions are performed by one script that is specific to the object class of text box. The more that script is used, the more it is tested by testing each action on 500 text boxes.
7. Focus on what matters- do strategic things with your time
This is a no-brainer. Would you rather be regularly checking for the authenticity of automation code, managing change in automation and managing HR issues in large testing and test automation teams or would you rather:
- Direct test cases toward specific areas of change where bugs are likely to be found
- Architect test cases that can easily adapt change and cope with complexity and technology change
- Spend more time in interpreting automation execution results
- Utilize time to construct a test suite ( automation + manual) to achieve 100% test coverage with every release
- Spend more time analyzing which is better automation tool in its features, reliability and it capacity to handle large scale test suites
If your choice is the latter then you're already voting for the Scriptless approach.
The fact is we all started out really loving Test Automation but somewhere along the way events overtook us and as we grew to know more about each other we realized that we were in danger of falling out of love. This post is for those who want to re-kindle that romance – go scriptless and re-ignite that spark. Come fall in love with Test Automation again!