On the Other Side of Page Object
summary
Claims an updated Page Object that uses interfaces instead of classes, lets one definition parameterize many locators, and composes page layers via Java multiple inheritance to avoid copy/paste. It embeds waits and a retry mechanism so flaky interactions repeat under configurable timeouts, provides mobile annotations for iOS & Android so one PageObject targets both platforms, and exposes extension points to replace locator sources or clicks (for example JS click). Demo code and a GitHub toolkit named Atlas show implementation and integration hooks.
AI-written summary · about
chapters (24)
- 0:00Introduction
- 1:15Automation experts seek new approaches
- 2:21Page object model limitations
- 7:37Java evolution and page objects
- 8:23Interface-based page objects
- 11:03Parameterizing elements with methods
- 13:56Reducing boilerplate with interfaces
- 15:46Default methods for component logic
- 17:29Atlas implementation overview
- 18:00Core modules in Atlas
- 20:11Tests with Atlas approach
- 22:51Working with element collections
- 24:00Pages in a single place
- 25:31Mobile automation with Atlas
- 26:13Atlas features summary
- 26:33Handling exceptions with retries
- 29:08Assertions and responsibility
- 30:57Extension points in Atlas
- 32:45Customizing click behavior
- 34:28Integration with test frameworks
- 35:39Adopting Atlas without framework
- 36:21Final summary
- 37:26Comparing Selenium, elements, and Atlas
- 38:33Q&A
related talks
44mLet’s Talk About Atlas
39mBeyond Page Objects
40mPage Objects: Keep It Simple and Better!
46mEverything you want to know about Page Object design pattern (Mikalai Alimenkou, Ukraine), part 2
37mKISS PageObjects
51mEverything you want to know about Page Object design pattern (Mikalai Alimenkou, Ukraine), part 1
14mUsing the Page Object Pattern
31mIn the Footsteps of Martin Fowler: Extending the Scope of the Page Object
