This project is being used to demonstrate page object pattern for Test Automation in Ruby. From a very high level, the capabilities covered are:
- [Data-driven framework concepts] (http://www.seleniumframework.com/data-driven-framework/what-is-data-driven-framework/) using data_helper.rb
- [Page Object] (http://www.seleniumframework.com/hybrid-framework/what-is-page-object/)
- [Page Factory] (http://www.seleniumframework.com/hybrid-framework/what-is-page-factory/)
- [Modeling Page Objects] (http://www.seleniumframework.com/hybrid-framework/modeling-page-objects/) [the most important one]
- [A shopping cart workflow automated] (http://www.seleniumframework.com/hybrid-framework/implement-page-object-pattern/) using Page Objects
- [Waits and Synchronization] (http://www.seleniumframework.com/basic-tutorial/wait_commands/) concepts applied
- [Executing on Selenium GRID] (http://www.seleniumframework.com/intermediate-tutorial/what-is-selenium-grid/)
Read - http://www.seleniumframework.com/hybrid-framework/what-is-page-object/
- Checkout the project (
git clone <repo_url>
) - Run
bundle install
- Go through
.feature
files - Check step defnitions
- If you get firefox native events error when hovering over top menu, it is a firefox issue. If you run it on remote webdriver, it should work fine
- IE really depends on which version you use, however I verified with IE11 on GRID and it ran fine
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request