Script-less automation creates a harmonious blend of functional and technological expertise to ensure test automation success. However, not everyone believes that it really works. Ravi Nukala addresses four common myths or misconceptions about script-less automation that needs some discussion.
A simple definition of “script-less test automation” might be “an approach that helps users automate their tests without having to script or code using any programming language.” Testing demands functional knowledge, however automation is a software development process that demands core technical capabilities. Test automation, most often than not, is driven by automation experts who might not necessarily have enough functional expertise about application under test.
A common approach for test automation is to build a framework that ensures ease of use, is scalable and reduces maintenance efforts in a world of demanding business needs, evolving requirements, changing technology interfaces and people. However building a framework that is easy to use is easier said than done because almost all frameworks that we see today are heavily dependent on technology people. What script-less test automation does is that it enable functional experts, be it manual testers or subject matter experts, to actively contribute to test automation. Script-less test automation strives to bridge the gap between functional and technical expertise by allowing functional experts to take the driver seat in test automation.
Script-less experience is achieved by abstracting the technology layer by the use of a workflow-driven approach to build automated test cases along with a set of keywords that runs in the background and converts the workflow into scripts.
Script-less automation creates a harmonious blend of functional and technological expertise to ensure test automation success by having functional experts use their knowledge to automate tests (work flows and data) and having automation experts use their tool and technology knowledge to strategize, lead, plan, troubleshoot, and write extension scripts if required.
Often, in various forums and at conferences, I have come across people with strong views on script-less automation. Some believe it works, and some don’t. When I look back at my conversations, I recognize a few common myths or misconceptions about script-less automation that needs some discussion.
Myth 1: Script-less no different from record and playback
Record and playback are capabilties that users can choose to use to record their tests and play it back to execute them. The recorder generates scripts automatically while user performs operation on the application under test. The recorded script contains hardcoded test data inputs, cannot handle dynamic situations, and is more error prone since it does not perform any validation and error handling on its own. The recorded script does not work in the long run as it is not maintainable, scalable, and reliable.
With a script-less approach, users use the readily available keywords, which are essentially well-managed and reusable scripts. These keywords are more robust and maintainable as they are not only built by best technology specialists but are also thoroughly tested.
Unlike record and playback, the script-less approach also provides a flexibility to manage dynamic objects and associate multiple data sets.
Myth 2: Script-less means script-free.
Script-less automation is an experience made possible by building keywords (which are essentially scripts) that are reusable across applications, tools, technologies, platforms, etc…
The idea is to have your automation experts build a library of simple yet exhaustive keywords that can be easily used by functional experts, allowing them to quickly automate tests without any scripting.
Keywords can be of different types like user actions such as “Click,” “Select Item,” “Enter Text,” etc…and operations such as arithmetic, file, database, and many more.
Myth 3: Script-less test automation is not maintainable and reliable
Script-less test automation is a well-structured, methodical, yet a very flexible approach to handle all types of complexities an application under test has to offer. It eliminates the complexities of test automation tools by building a layer on top, allowing functional users to automate.
A well-designed script-less approach, maintains complete traceability of all reusable components and maps dependencies throughout the test automation lifecycle. The end-to-end traceability helps users identify change impact and allows easier change adoption and reduced maintenance efforts to arise from any change in the workflow or objects.
This layer houses scripts at a granular level that can be scaled across multiple technologies, automation tools, and applications.
Myth 4: Automation experts are no longer required.
Even though script-less test automation allows manual testers to automate test cases quickly,you still need your best automation experts and specialists to prioritize tests—what to automate and not automate, strategies for object learning, test-data planning, and to extend the script-less framework by writing scripts, if required. Your automation specialists lead the way and are the owners of your test automation suites.
Script-less automation allows you to use your functional experts in building automation and bridging the gap between domain and automation expertise. It offers the ability to use the best of both worlds to achieve reliable, faster automation by allowing you to leverage your current team’s strengths.
Script-less automation is less about moving away from programming and more about getting your functional experts to automate using their expertise by giving them a platform that ensures efficient, reliable, and quality automation.
It's up to the automation experts to build a well-designed, script-less framework that can achieve higher levels of maintainability, allowing users to effectively change workflows and data while being in complete control of the impact on overall automation.
In its endeavor to achieve faster, reliable, and scalable test automation, script-less automation strikes the right balance between the functional and technical expertise required in a manner that linear approaches like record and playback or script-based approaches could never achieve.