5

What framework is Page Object Model? I would argue that it is data-driven, since, even though many actions are wrapped in user created methods, it is not totally reliant on keywords. Thus it is not Hybrid, but Data Driven because you always need to extract data from a file. Am I right?

  • POM is a system to name web page elements. What's all the stuff about data-driven, keyword driven, Hybrid, Files, etc? Lots of fun words but Page Objects are about naming page locators and just that. – Michael Durrant Mar 15 '17 at 12:31
  • I've since learned that Page Objects are also about actions and even multiple actions as services – Michael Durrant May 18 '17 at 11:37
  • Possible duplicate of Is page object a framework or design pattern? – dzieciou Jul 20 '17 at 8:54
9

The PageObject Model is not a framework. A framework is:

a basic structure underlying a system

The Page Object Model is:

an object repository design pattern here.

Using the POM might result in a personal testing framework as it creates a part of the underlying structure for your tests.

but Data Driven because you always need to extract data from a file.

POM itself does not extract data from a file unless you would call classes a file. The PageObject should not contain test-data, just element locators, and actions. It only describes the model of the objects you want to interact with. Any data is implemented using another framework or pattern.

3

As others have said, the Page Object Model is a design pattern which helps to avoid repeated code.

A Framework is a code platform providing a base set of generic functionality and guidelines for implementation.

You implement design patterns within frameworks - so you might use a keyword-driven framework with the Page Object Model, for example. Or a hybrid framework with a repository pattern.

In short, the Page Object Model is framework-agnostic because it can be used with many different frameworks.

1

We often call POM a framework but its mostly is a design pattern/class style to create object repository.

You can make it Hybrid by adding even other testing process... like- adding cucumber-jvm to partially do some behavioral driven testing. And also data driven with Apache POI or using DataProvider.

1

I can see you are getting little confuse between Page Object Model and Data driven/Hybrid. Below small info might help to understand basic -

What framework is Page Object Model?

  • Simply its one of the design pattern type

  • It helps to create Object Repository for UI elements

  • In POM, for each web page in the application there should be corresponding page class.

  • Page Object Model is just a way to make your code more readable, maintainable, and reusable.

Is it data-driven?

  • Data driven, Hybrid or Keyword driven all those are types of functional automation testing framework

  • In data-driven testing the input and output values for the test are fetched from data files & In keyword driven framework we need to create a set of keywords & data tables, which are not dependent

  • All these nothing suggest anything about how to make code readable, maintainable & reusable but it helps to write your flow of test to be executed

  • Describe, How tests should get executed?

Source - Visit

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.