Sunday 1 October 2017

Why an organization should not let anyone to code Automation Script

On Sep 17, 2017, I had a great discussion over couple of beer with one my good friend Sam (though he drinks sprite only) :D


Now we were discussing about latest trend in Software Test Automation, since I have been exploring on subjects like WinAppDriver, Galen Framework, XML based API Testing. After exchanging little ideas about these tools Sam came up with a new tool which is being currently been implemented in his company. Let me not name the tool, lets say it "Automation tool for Kids" or ATK.Why I named it that way, you will come to know, please proceed.

Sam is kind of high caliber Automation-cum-Software Developer.

Sam bhai told me this tool is awesome. He went for 5 day training for this tool. He said anyone can work on ATK. No need of in-dept knowledge of JavaScript or any other language.

I raised my eyebrow. How is that possible?

He went on explaining me why this tool would be a success. His company have asked manual testers and BA's to start working on this tool. I asked him about the test stability. He said he don't have the data yet but he was quite positive about less maintenance in regression suite.

One thing that has always bothered me is the Test Stability. Please understand my frustration, I have been working on Automation Testing Profile for around 8 years and have little good understanding of QTP/UFT, Selenium WebDriver, Test Complete, Coded UI and most of the time I have been working on Fixing the issues in Automation and I know exactly where an automation code will/has fail/failed.

Having this things in my mind I was kinda skeptical about the Test Stability. In my organization, we have got this great tool - basically a wrapper of Selenium WebDriver and nicely build. Just like any Keyword driven framework you just have to pass on the locator and data. Trust me I never faced an issue related to the code behind of this Keyword Driven framework based tool, nicely coded, nicely synchronized and very nicely configured.

Now where did the issue started. The basic issue was at the inception of this tool, it was targeted for Business Analyst and Manual Testers to write the scripts. Problem is when you ask a non-technical guy to code the automation script it will be easy for them to add steps like "ClickOnAnElement", "EnterAValueInAnElement" or "ValidateAValueIAnElement" but 
- What about the Synchronization?
- What about the correct Identification criteria or correct Locator? 
- What about the behavior of system?
- What about different ways of Validating a result?
- What about code re-usability and maintainability?
- What about scalability?

Without an understanding of Automation Framework Development, it would be unfair to expect good stability in Automation Suite. It doesn't matter which automation tool you use.

-Pankaj Dhapola
Let's Think on it

No comments: