Every software development company tests their product before releasing it to their clients. Test engineers strive to deliver the product without any defects, but quite often a defect appears (and reappears) even with the best testing processes in place.  Automation testing utilization increases effectiveness, reliability, repeatability and test coverage.

The Agile methodology is implemented in many organizations, which requires more frequent regression testing as the sprints are short. The automation capabilities can help accomplish the Agile sprint-based regression testing and integration testing needs.

The Keyword-Driven Automation Approach

At AIS, we implemented the keyword-driven automation approach to accomplish multiple device and cross-browser testing for our clients.

In the keyword-driven approach, each business process is mapped into actions and each operation is mapped as a keyword. It’s easy for non-technical testers to automate the test cases or test procedures, as no coding knowledge is required.

The Automation Framework Model

Driver Script: The driver script is an Excel file that contains a list of test scripts to be executed by the framework. Each script can include the path to an external data file.

Test Script: Test script is an Excel file (a smart script that has some logic implemented in the background) that contains the test steps, test data and expected results.

Dictionary: Dictionary is an XML file that contains the application messages and definitions. It serves as an input source to test scripts (for displaying pages, controls and keywords in drop-down lists), and as an input source for the test framework itself in order to send messages or interact with interface objects.

Test Log: Test log is another XML file, generated from the framework during test execution. The XML format allows it to be used as an input feed to any external test management application for defects or reports.

Test Report:

Advantages of the Keyword-Driven Framework

    • Easy to create and maintain
      All logic needed to interact with the application is created ahead of time. Since it uses simple keywords to invoke interaction, it can be completed by anyone, regardless of technical ability.
    • Independent of AUT (Application Under Test)
      Independent of the application interface, so tests can be constructed before the interface is completed.
    • Independent of test tools
      Keywords are tied to test-tool specific interaction code. If the tool and the code changes, the keywords and test scripts remain the same.
    • Built for speed
      Excel-based “smart” test scripts have drop-down lists for pages, controls and keywords, which allow for rapid script development and management.
    • Extensible and abstract
      Keywords are in an abstract interaction layer that sits above the application under test. As a result, the framework can support any number of applications.
    • Non-technical personnel can automate the scripts
      The smart script approach allows non-technical testers to perform the automation as no coding knowledge is required.
    • Framework can be utilized with many automation tools
      The generic framework can be used with most of the automation tools currently in the market.
    • Business users can execute the test cases (head start to UAT)
      It’s easy to execute the automated test cases/test procedure, so business users can look at the application before it’s deployed to production and the User Acceptance Testing (UAT) can be shorter or even eliminated.

Special Thanks to Jesse Forbes for his contributions to this post.