Keyword-driven testing

Keyword-driven testing

Overview

Keyword-driven testing (also: table-driven testing, action-word testing) is a software testing methodology. Although keyword testing can be used for manual testing, it is a technique particularly well suited to automated testing [ [http://www.stickyminds.com/sitewide.asp?Function=edetail&ObjectType=COL&ObjectId=8186] , Danny R. Faught, Keyword-Driven Testing, Sticky Minds] . The advantages for automated tests are the reusability and therefore ease of maintenance of tests that have been created at a high level of abstraction.

Methodology

The keyword-driven testing methodology divides test creation into two stages: the Planning Stage, and the Implementation Stage.

Planning Stage

Examples of keywords

* A simple keyword (one action on one object), e.g. entering a username into a textfield.

* A more complex keyword (a combination of other keywords in a meaningful unit), e.g. logging in.

Implementation Stage

The implementation stage differs depending on the tool or framework used. Often, automation engineers implement a framework that provides keywords like “check” and “enter” [ [http://www.stickyminds.com/sitewide.asp?Function=edetail&ObjectType=COL&ObjectId=8186] , Danny R. Faught, Keyword-Driven Testing, Sticky Minds] . Testers or test designers (who don’t have to know how to program) write test cases based on the keywords defined in the planning stage that have been implemented by the engineers. The test is executed using a driver that reads the keywords and executes the corresponding code.

Other methodologies use an all-in-one implementation stage. Instead of separating the tasks of test design and test engineering, the test design "is" the test automation. Keywords, such as “enter” or “check” are created using tools in which the necessary code has already been written. This removes the necessity for extra engineers in the test process, because the implementation for the keywords is already a part of the tool. Tools such as GUIdancer and Worksoft Certify use this approach.

Benefits

Although this methodology requires more planning and a longer initial time-investment than going directly to the test creation stage and recording a test, it does make the test creation and test maintenance stages more efficient and keeps the structure of individual tests more readable and easier to modify. The more abstract keywords are, the more reusable they are, and therefore the easier a test is to maintain. As well as reducing the cost and time spent maintaining and updating tests, the modular structure of keyword-driven testing means that new tests can easily be created from pre-existing modules.

Another advantage is the reduction in technical know-how required for the test automation process. In the first approach, technical know-how is only required by the engineers that implement the keywords. In the second approach, even this is not required, which means that the test team is capable of entirely automating tests, even without programming knowledge.

ee also

* Data-driven testing
* Test Automation Framework
* Test-Driven Development

References

External links

* [http://www.logigear.com/newsletter/key_success_factors_for_keyword_driven_testing.asp Hans Buwalda] , success factors for keyword driven testing.
* [http://safsdev.sourceforge.net/DataDrivenTestAutomationFrameworks.htm Test automation frameworks]


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • Keyword-Driven Testing — (auch Table Driven Testing, Action Word Testing) ist eine Technik des automatischen Software Testens. Inhaltsverzeichnis 1 Charakteristik 2 Methode 2.1 Planung 2.1.1 Beispi …   Deutsch Wikipedia

  • Keyword driven testing — Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung. Keyword Driven Testing (auch Table Driven Testing, Action Word… …   Deutsch Wikipedia

  • Data-driven testing — (DDT) is a term used in the testing of computer software to describe testing done using a table of conditions directly as test inputs and verifiable outputs as well as the process where test environment settings and control are not hard coded. In …   Wikipedia

  • Hybrid testing — OverviewThe hybrid Test Automation Framework is what most frameworks evolve into over time and multiple projects. The most successful automation frameworks generally accommodate both Keyword driven testing as well as Data driven testing. This… …   Wikipedia

  • Schlüsselwort gesteuertes Testen — Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung. Keyword Driven Testing (auch Table Driven Testing, Action Word… …   Deutsch Wikipedia

  • Winrunner — ist ein Teil der „Functional test Software“ Komponenten dessen anderer Teil QuickTestProfessional ist. Ein automatisches GUI Testwerkzeug welches dem Benutzer das Aufnehmen und Wiederabspielen von Interaktionen mit der Benutzeroberfläche einer zu …   Deutsch Wikipedia

  • Test automation framework — A Test Automation Framework is a set of assumptions, concepts and tools that provide support for automated software testing. The main advantage of such a framework is the low cost for maintenance. If there is change to any test case then only the …   Wikipedia

  • Test automation — Compare with Manual testing. Test automation is the use of software to control the execution of tests, the comparison of actual outcomes to predicted outcomes, the setting up of test preconditions, and other test control and test reporting… …   Wikipedia

  • Control table — This simple control table directs program flow according to the value of the single input variable. Each table entry holds a possible input value to be tested for equality (implied) and a relevant subroutine to perform in the action column. The… …   Wikipedia

  • Akzeptanztest (Softwaretechnik) — Ein Softwaretest ist ein Test während der Softwareentwicklung, um die Funktionalität einer Software an den Anforderungen und ihre Qualität zu messen, und Softwarefehler zu ermitteln. Inhaltsverzeichnis 1 Definition 2 Ziele 3 Testplanung …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”