Blog

Keyword-driven testing methodology. Part 1

Automation testing is a topic that is under constant discussion and improvement. The IT industry often tries to find more and more ways to make automation more effective and applicable, though more efforts should be made to fit the QA process; this is where keyword-driven testing (KDT) excels.
17 February 2015
Test automation
The article by Dmitry Tishchenko
Head of global business development at a1qa

Automation testing is a topic that is under constant discussion and improvement. The IT industry often tries to find more and more ways to make automation more effective and applicable, though more efforts should be made to fit the QA process; this is where keyword-driven testing (KDT) excels.

KDT, also known as table-driven testing or action word based testing, is a software testing methodology suitable for both manual and automated testing. This method separates the documentation of test cases – including the data to use – from the prescription of the way the test cases are executed.

As a result, it separates the test creation process into two distinct stages: a design and development stage, and an execution stage. This approach is particularly attractive for automation testers without more advanced programming skills.

Also, the analysis and integration of very similar tests with keywords reduces the amount of code required in automated tests. Thus, a person who prepares the description of a test using already implemented keywords can, in fact, create an automated test at the same time. This methodology considers creating a table in the form of keywords for such automated actions as “Add Item” or “Delete Item.”

For example, consider a keyword for a log file messages check. First, check the message type and its code. Then, write a test method to perform automated testing with a couple of parameters: the prefix and postfix. Store the test data in a text file as a table, but use an additional middle column to transform the table into ordinary English text. Separate the records with new lines and separate three columns by tabs.

The test engine library will read through this test data and invokes the test method. For simplicity, we will not consider the test engine and test method implementation just yet. The scheme of an automated test is shown below:

A properly organized test framework according to the KDT approach can reuse the test method for a whole test scope. Keyword usage could be enough for an automated test design. Automated tests in the form of ordinary English text and stored inside text file are easy to develop and maintain. There are several KDT frameworks that implement test engine functionality. We’ll dive into some more detailed examples later, using Robot Framework as a test engine and Python as a programming language.

Read the second part here.

The article was published on Computer Technology Review.

More Posts

qa-trends-in-telecom
30 September 2022,
by a1qa
5 min read
4 telecom trends for 2023 and how to painlessly implement them with QA
It’s time to explore the telecom trends for the upcoming year. Let’s look at them together and also see the value that QA brings for their smooth deployment.
Cybersecurity testing
Migration testing
QA trends
Quality assurance
Test automation
ai-ml-test-automation-mini
15 September 2022,
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
why-do-bugs-get-missed
31 August 2022,
by a1qa
4 min read
Why do bugs get missed? Learn the problems and tips to avoid them
Still, finding overlooked bugs after the app goes live? Let’s find out why this happens and how to fix it.
Quality assurance
Test automation
30 June 2022,
by a1qa
4 min read
App software testing for telecom: What are the common issues telco providers face?
Facing problems with the quality of your telecom software products? Read more in the article and find out the ways to address them.
Cybersecurity testing
Performance testing
Test automation
Mobile app testing
31 May 2022,
by a1qa
4 min read
Mobile app testing guide: win the race with five-star software
Which aspects of mobile apps to test first to produce a really high-quality product? Find the answer to this and other questions related to mobile app testing in the article.
Cybersecurity testing
Functional testing
Mobile app testing
Performance testing
Test automation
Usability testing
Test automation in Agile
20 May 2022,
by a1qa
5 min read
Test automation in Agile and DevOps: Maximizing flexibility and speed
Global market tendencies and user behavior are changing rapidly, if not talking about the software itself. Familiar situation? Find out how to get ahead of the curve with test automation in Agile and DevOps.
Agile
Test automation
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

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.