Blog

Keyword-driven testing: reasons to use or skip. Part 1

Automation is a topic that is under constant discussion and improvement today.  Its consistency has been already proved.  But for IT industry in general this practice pretends to be more and more effective and applicable, to fit QA process needs better.  One of its means is cost effective usage of testing. Just imagine that you can double return on investment KPI.
9 September 2014
Test automation
The article by Dmitry Tishchenko
Head of global business development at a1qa

Automation is a topic that is under constant discussion and improvement today.  Its consistency has been already proved.  But for IT industry in general this practice pretends to be more and more effective and applicable, to fit QA process needs better.  One of its means is cost effective usage of testing. Just imagine that you can double return on investment KPI. On the one hand you save money, on the other can increase quality using the same budget or mitigate QA budget risks on stabilization and delivery stage.

There are lots of interpretations of keyword driven approach in the world of test automation. Different tools allow using keywords.  But not all that cases may be a true keyword driven. The way I used to describe it in simple words is: “manual testers mostly create test cases using keywords and test developers create code which implements particular keywords via available interfaces”.

What is coming out that meaning?

  1. The keyword driven approach helps to achieve better ROI in long term saving money on support activities.
  2. It optimizes (moves down) technical threshold for stuff who may be involved in automated tests development process i.e. persons who prepare description of tests which is pretty the same like in test automation in terms of keyword driven. We may say that a person who prepares description of test using already implemented keywords creates automated test the same time.
  3. The last but not least – it maintains the relations between test developers and testers themselves regarding automated tests which positively impacts QA budgets and overall process.

Of course, there are patterns for using that approach like for data driven or other ones we are aware of.  For instance, you may apply scripting technique which requires less money for initial test development, if your test process assumes coverage of stable critical functionality (meaning smoke test) the frequency of builds is closer to daily basis, and testing is required for more than 4-6 upcoming months.

Thinking of Keyword driven approach you should ensure that you have a lot of business logic. There are similar actions which can be used in different test cases (potential keywords), the business logic is too complex for Data-driven approach, which may be extremely effective in some other particular cases.

So, you never know without trying! We decided – it’s worth doing. I’d like to share some of the most important findings. One of the crucial requirements here is that special description format should be applied from the very beginning of testing activities. Taking into account this fact and absence of experience with tools that are specially designed for Keyword driven approach implementation we decided to split our first Keyword driven practice in two steps.

  • Step 1 – Proof of Concept (POC). This is the base for the article you are reading. Mentioned step purposed to try out a particular tool, check basic automation indicators like execution/support efforts, check if manual tester might be able to handle test case description.
  • Step 2 – Using Keyword driven approach. The second one is to apply this approach from the very beginning of the particular project and cover the whole QA cycle using it.

Thus, we have found a “guinea pig” for the first step and here is a description (without mentioning concrete customer, of course).

Solutions comparison

 Existent solutionKeyword driven POC
Automation approachScriptingKeyword driven
Programming LanguageC#Python
Test Automation frameworka1qa SMART frameworkRobot framework
Automation toolSeleniumSelenium
Test execution systemTFSJenkins

Basically, we have selected quite stable scope in terms of business logic and user interface changes. It was decided to select rather large scope which guaranties that there will be enough keywords to make measurements and to check test development abilities using keywords only. As a matter of fact, 200 test cases were selected for automation.

It should be mentioned that selected project was quite dynamic and required daily test executions. It was necessary to speed up solution comparison process.

One of the required factors was to get a situation when test development efforts on the keyword driven test framework are less labor-intensive in comparison with actual automation way for existent solution. We achieved mentioned result just after 150+ cases were developed.

Some good lessons have been also learned about Keyword driven while tests were developing. There are top-3 issues you should consider applying keyword driven practices to the project:

  • TBD 1– First tests on Robot Framework KDT requires quite more than average efforts (5-6 hours when scripts with DDT regular approach requires 3-4 hours). Efforts decrease with list of base keywords being completed and available for re-use (Down to 1-2 hours).
  • TBD 2 – The tester is required to learn several special formats & keywords for creating the customized keywords. It takes some time to get familiar with framework specifics on tests development (IDE, libraries, etc.)
  • TBD 3 – Robot Framework execution engine doesn’t help contain default mechanisms implementing itself to solve parallel test execution problem.  It was quite a big challenge to implement this mechanism. We tried to run scripts simultaneously on a single VM by using several jobs in Jenkins, but it failed because of AUT UI specific interactions: some UI elements were available only in the currently available browser instance.

A soon as a number of tests were ready, we started actual comparison.

In the next post we`ll provide you  with the results we got.

The article by Dmitry Tishchenko was published in UK magazine “European Software Tester”.

More Posts

19 April 2022,
by a1qa
5 min read
What prevents companies from boosting eCommerce customer experience: 4 common mistakes
Dreaming of a flawless online shopping journey for your users? Explore 4 widespread situations that hamper achieving this goal.
Cybersecurity testing
Performance testing
Test automation
Usability testing
2 February 2022,
by a1qa
5 min read
Interview with Mike Urbanovich: How to build a robust test automation strategy?
The Head of testing department at a1qa answers the questions on how to smartly build a winning test automation strategy and talks about the advantages you may obtain with it.
Test automation
31 January 2022,
by a1qa
4 min read
Scriptless test automation: revealing the truth via 3 misconceptions
Planning to go scriptless but in doubt? Explore 3 delusions of codeless test automation and its benefits when introduced smartly.
Test automation
test auto speed
11 November 2021,
by a1qa
4 min read
Test automation: 3 core activities to keep pace with dynamic software changes
Planning to release high-quality IT solutions faster? Find out which test automation activities help keep up with constantly updating products.
Test automation
ai-ml-test-automation-mini
29 October 2021,
by a1qa
4 min read
4 key QA activities to solve test automation challenges via AI and ML
How to address the difficulties caused by implementing test automation? Learn how to do it via applying AI and ML.
Test automation
13 May 2021,
by a1qa
4 min read
How to attain in-sprint test automation to reinforce development processes
Learn how in-sprint test automation improves business workflows. Consider the top 5 essential steps to introduce it smoothly.
Test automation
12 April 2021,
by a1qa
5 min read
Watch out for 6 telecom trends and QA tips to implement them
In our article, we unleash the upcoming telecom trends and reveal how to be certain in introducing them correctly by applying QA practices.
Agile
Test automation
31 March 2021,
by a1qa
4 min read
QA scenario to introduce 6 eCommerce trends in 2021
Discover what trends will rule the eCommerce industry in 2021 and how QA can help implement them with confidence and ease.
Cybersecurity testing
Test automation
25 February 2021,
by a1qa
4 min read
9 QA points for delivering high-quality SaaS-based solutions
In the article, we’ve gathered 9 QA factors relying on the SaaS specifics that may help to perform SaaS testing with ease.
Cloud-based testing
Cybersecurity testing
Functional testing
Performance testing
Test automation

Get in touch

Please fill in the required field.
Email address seems invalid.
Please fill in the required field.
We use cookies on our website to improve its functionality and to enhance your user experience. We also use cookies for analytics. If you continue to browse this website, we will assume you agree that we can place cookies on your device. For more details, please read our Privacy and Cookies Policy.