OzFramework / oz

Oz is a behavioral web-ui testing framework developed to reduce test maintenance by using a predictive model rather than a scriptive model when writing tests.
Apache License 2.0
23 stars 7 forks source link

Closes #145 - Detect Pages using the Router #147

Closed Castone22 closed 5 years ago

Castone22 commented 5 years ago

See #145

Some of the logic behind this change Current implementation uses ruby-specific paradigms to try and detect a given page object, and is actually pretty brittle for something we expose to the common use layer (Gherkin). It's case sensitive and wouldn't scale that well as oz projects get larger, since more and more constants would get added to MRI's constant list.

Perhaps more notably, I can't actually think of a justification for using constant lookup if we're only looking up pages, something of which a complete list should be stored in the router anyway, so it makes sense to allow the router to handle identifying a page from the gherkin. The router's page blueprint list will stay small compared to ruby's constant index (which also will contain more than pages)

In short

Castone22 commented 5 years ago

Other changes that snuck in here, update of chromedriver for all platforms, (fixes the chromedriver hang that sometimes happens on clicking a button)

Change to be compliant with watir v6 standards for how we call wait_until &:present