Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Ember CLI Page Object

Build Status Ember Observer Score Latest version

Represent the screens of your web app as a series of objects. This ember-cli addon eases the construction of these objects for your acceptance and integration tests.

What is a Page Object?

An excerpt from the Selenium Wiki

Within your web app's UI there are areas that your tests interact with. A Page Object simply models these as objects within the test code. This reduces the amount of duplicated code and means that if the UI changes, the fix need only be applied in one place.

The pattern was first introduced by the Selenium

You can find more information about this design pattern here:


  • Ember.js v3.16 or above
  • Ember CLI v2.13 or above
  • Node.js v12 or above

Let's work together to improve this addon!

You can find us on the official Ember Discord server, or open an issue on Github to request features, report bugs or just to ask any question.


$ ember install ember-cli-page-object

Or you can install the NPM package directly.

$ npm install --save-dev ember-cli-page-object


Check the site for full documentation.


The addon includes the following blueprints

  • page-object Creates a new page object
  • page-object-component Creates a new component to be used in a page object
  • page-object-helper Creates a new helper to be used in a page object

You can create a new page object called users using the generate command

$ ember generate page-object users

  create tests/pages/users.js


See the Contributing guide for details.

Project's health

Build Status Ember Observer Score Dependency Status devDependency Status Codacy Badge Code Climate Coverage Status


  • Santiago Ferreira (@san650)
  • Juan Manuel Azambuja (@juanazam)
  • Jerad Gallinger (@jeradg)
  • Anna Andresian (@magistrula)
  • Ruslan Grabovoy (@ro0gr)


ember-cli-page-object is licensed under the MIT license.

See LICENSE for the full license text.