5/29/14

UFT - Automation Framework

What is a Software Framework?

A Framework defines a set of guidelines/best practices that enforces a set of standards which makes it easy to use for the end users to work with. There are different types of automation frameworks and the most common ones are listed below:
  • Keyword-Driven Framework
  • Data-Driven Framework
  • Hybrid Framework

Keyword-Driven Framework

Keyword driven testing is a type of functional automation testing framework which also known as table-driven testing or action word based testing.
In Keyword-driven testing we use a table format, usually a spreadsheet, to define keywords or action words for each function that we would like to execute.
Keyword Driven testing in Automation Testing

ADVANTAGES:

  • It is best suited for novice or a non technical tester.
  • Enables writing tests in a more abstract manner using this approach.
  • Keyword driven testing allows automation to be started earlier in the SDLC even before a stable build is delivered for testing.
  • There is a high degree of reusability.

DISADVANTAGES:

  • Initial investment in developing the keywords and its related functionalities might take longer.
  • It might act as a restriction to the technically abled testers.

Data Driven Framework

Data-driven testing is creation of test scripts where test data and/or output values are read from data files instead of using the same hard-coded values each time the test runs. This way testers can test how the application handles various inputs effectively. It can be any of the below data files.
  • datapools
  • Excel files
  • ADO objects
  • CSV files
  • ODBC sources

FLOW DIAGRAM:

Data Driven Testing can be best understood by the following diagram:
Keyword Driven testing in Automation Testing

ADVANTAGES:

  • Data driven framework results in less amount of code.
  • Offers greater flexibility for maintaining and fixing the scripting issues.
  • Test Data can be developed

DISADVANTAGES:

  • Each script needs to be different to understand different sets of data.

Hybrid Framework

Hybrid Framework is a combination of Keyword driven and data Driven framework that can be best described using the following flow diagram.
Hybrid Framework in Automation Testing

Affecting Factors

Following are the parameters one should take into account while developing the framework. The affects factors are listed below
  • Framework Files Should Support Versioning Controlling Software such as SVN,CVS, MS Source Control
  • Framework should support executing the scripts in different environments viz- QA, SAT, DEV
  • Upon Object Changes, Scripts should execute with minimal changes.
  • Framework should configure itself and take care of prerequisite such as creating folders/databases.
  • Framework Should have Robust Reporting Structure so that issues in the script/application can be easily spotted
  • Framework Should have greater flexibility so that it should be easy to use
  • Framework Should follow coding standards so that files, functions and history of changes are maintained correctly.

Designing a Framework

Let us design a simple framework by taking a sample application. We will automate few scenarios of the application under test and write reusable functions.

13 comments:

  1. Can you use XML files as a data source instead of the data tables or Excel spreadsheets?

    ReplyDelete
  2. Thanks for your informative article on UFT automation testing tool. Your post helped me to understand the features and functionality of QTP automation testing tool. QTP training in Chennai

    ReplyDelete
  3. Thanks for your information. QTP provide most precise and independent review about a software application. This automation testing tool is ideal to determine the performance and validity of a software application. QTP training

    ReplyDelete
  4. Oracle DBA Training in Chennai
    Thanks for sharing this informative blog. I did Oracle DBA Certification in Greens Technology at Adyar. This is really useful for me to make a bright career..

    ReplyDelete
  5. Whatever we gathered information from the blogs, we should implement that in practically then only we can understand that exact thing clearly, but it’s no need to do it, because you have explained the concepts very well. It was crystal clear, keep sharing..
    Websphere Training in Chennai

    ReplyDelete
  6. Data warehousing Training in Chennai
    I am reading your post from the beginning, it was so interesting to read & I feel thanks to you for posting such a good blog, keep updates regularly..

    ReplyDelete
  7. Selenium Training in Chennai
    Wonderful blog.. Thanks for sharing informative blog.. its very useful to me..

    ReplyDelete
  8. Oracle Training in chennai
    Thanks for sharing such a great information..Its really nice and informative..

    ReplyDelete
  9. I have read your blog and i got a very useful and knowledgeable information from your blog.You have done a great job.
    SAP Training in Chennai

    ReplyDelete
  10. This information is impressive..I am inspired with your post writing style & how continuously you describe this topic. After reading your post,thanks for taking the time to discuss this, I feel happy about it and I love learning more about this topic
    Android Training In Chennai In Chennai

    ReplyDelete
  11. Pretty article! I found some useful information in your blog, it was awesome to read,thanks for sharing this great content to my vision, keep sharing..
    Unix Training In Chennai

    ReplyDelete
  12. I found some useful information in your blog, it was awesome to read, thanks for sharing this great content to my vision, keep sharing..
    SalesForce Training in Chennai

    ReplyDelete
  13. There are lots of information about latest technology and how to get trained in them, like Best Hadoop Training In Chennai have spread around the web, but this is a unique one according to me. The strategy you have updated here will make me to get trained in future technologies Hadoop Training in Chennai By the way you are running a great blog. Thanks for sharing this blogs..

    ReplyDelete