Keyword Driven Development Flashcards
ISTQB Definition of KDT (Keyword Driven Testing)
a scripting technique that uses data files to contain not only test data and expected results, but also keywords
What is the The heart of Keyword Driven Testing (KDT)?
The idea that every application has a set of different tasks that need to be done to use the application.
Definition of Keyword
Abstract statement of ‘what’ the system is supposed to do. A keyword is a business action or a step of a test case.
functional (“the what”) tasks for almost any application rarely change.
the functional tasks that the users need to do with the application will almost always remain the same.
The most right people that define the keywords that they need to test in the application.
Test analysts
One of the most important prerequisites for implementing maintainable test scripts
is a good structure where the tasks to be performed remain abstract, such that they rarely change.
Which is the layer that contains The test case described in abstract terms?
the test definition layer
Which is the function of the test adaptation layer?
Interfaces between the test case and the physical GUI of the SUT.
In which layer do we find the tool that is going to actually run the tests against the SUT?
The test execution layer
Another name for keywords
Action Words.
What is the containment of the KDT files?
test data, expected results and keywords.
One advantage of the separation between a manual test case and the human tester when we use KDT principles:
The test case design is decoupled from the SUT
What it is the division of labor that could exist in the automation team when we use the KDT principles?
o Test Analysts design test cases and write scripts using keywords, data, and expected results.
o Technical Test Analysts (automators) implement keywords and the execution framework needed to run the tests
Advantages of the use of Keywords?
- Reuse of keywords in different test cases
- Improved readability of test cases (they look pretty much like manual test cases)
- Less redundancy
- Lower maintenance costs and effort
- Isolated execution of tests
An advantage of the abstract language used in the writting of the keywords.
scripts using keywords can be written well before the SUT is available for testing (just like manual tests)