[go: up one dir, main page]

100% found this document useful (1 vote)
271 views14 pages

Automation Frameworks and Design Patterns

The document discusses various automation frameworks and design patterns used for testing software. It covers data driven frameworks which store test data externally, keyword driven frameworks which use keywords to tag reusable test functions, and hybrid frameworks which combine both approaches. It also discusses test driven development, behavior driven development, and common test design patterns like the page object model and facade pattern.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
271 views14 pages

Automation Frameworks and Design Patterns

The document discusses various automation frameworks and design patterns used for testing software. It covers data driven frameworks which store test data externally, keyword driven frameworks which use keywords to tag reusable test functions, and hybrid frameworks which combine both approaches. It also discusses test driven development, behavior driven development, and common test design patterns like the page object model and facade pattern.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 14

Automation Frameworks and

Design Patterns

Uma Shankar
Agenda

 Data Driven Framework


 Keyword Driven Framework
 Hybrid Framework
 Test Driven Development
 Behavior Driven Development
 Automated Test Design Patterns
Data Driven Framework

 The data-driven framework is based on the data sets that are


stored into an external file
 The external file/source can be an excel workbook, XML, JSON
etc.,
 Test data sets are kept isolated from the Test script/code
 This makes the Tests configurable, and the tests get executed
based on any data configured
Data Driven Framework – Code
Data Driven Framework – Data Source
Keyword Driven Framework

 In this framework, Keywords form the basis of test functionality


 The functions that are to be performed are written separately
from the actual script and tagged with keywords.
 These keywords which are placed in an external file (Excel sheet,
Feature file, Story file), are called using the code
 Helps reduce code length by creating reusable
methods/steps/keywords
Keyword Driven Framework – Keyword/Code
Hybrid Framework

 Hybrid Driven Framework is a combination of data-driven and


keyword-driven frameworks.
 Most modern frameworks are hybrid.
Test Driven Development

 Create a Single unit test describing an aspect of the program.


 Run the test, which would fail because the feature has not been
developed yet.
 Write basic code required to make the test pass.
 Refactor the code to make it simple(if required).
 Repeat above process, adding more unit tests until all required
features are developed and pass said tests
Behavior Driven Development

 BDD is a way for software teams to work that closes the gap
between business and technical people.
 First, take a small feature and discover related scenarios.
 Document those examples in a way that can be automated, and
check for agreement. (Feature file – Cucumber, Store file –
JBehave).
 Finally, implement the feature described and run unit tests
created for scenarios.
 Refactor code until tests pass.
Test Design Patterns

 The Page Object Model Pattern :


The Page Object Model is a widely used object design pattern for
structuring automation test code. Here, pages in the app represented as
Classes, and various UI elements of that pages are defined as variables.

 The Facade pattern:


This pattern provides a single interface to deal with complex
web pages. In this pattern, we design the facade class which has methods
that combine actions executed on different pages.
Questions
References
 TestNg Framework - https://github.com/umashankar51/TestNgFramework
 Allure-cucumber Framework -
https://github.com/umashankar51/maven-allure-cucumberjvm
 Test Design Patterns -
https://kobiton.com/book/chapter-12-test-automation-design-patterns-you
-should-know/
 Test Automation Frameworks -
https://www.guru99.com/test-automation-framework.html
 TDD/BDD - https://cucumber.io/blog/bdd/bdd-vs-tdd/
 Data driven framework - https://www.youtube.com/watch?
v=sgbbB46BU2Q&ab_channel=SoftwareTestingStep-by-Step
Thank you!

You might also like