November 5, 2021

The Cheezy Internet: Creating a Ruby + Watir + Cucumber automation framework with Jeff Morgan's Page-Object gem

Greenfield projects have been rare in my automation development career. The programming language, the toolsets that help craft the automation frameworks, the methods that interact with the pages of the web  application under test, all have been selected long before I joined the software development team. 

My job as an automation developer is to get up to speed on the automation framework as fast as possible. To climb the steep learning curves quickly, I have been creating little toy projects, ever since my first automation development job at Fitbit-Boston back in 2015. Doing this, I get explore the tools and technologies used for automated testing, using similar source material testing against a simple test site.

Our source material for this current exercise will be Jeff "Cheezy" Morgan's LeanPub book, "Cucumbers and Cheese: A Tester's Workshop". Even though "Cucumbers and Cheese" was written in 2012 and last updated in 2017, it contains a treasure trove of information for beginning automation developers, walking the reader through building an automation framework in Ruby + Cucumber + Watir + Jeff's page-object Ruby gem. Jeff's application under test is a mock site, the Puppy Adoption Agency at http://puppies.herokuapp.com/

Our application under test for this project will be an old favorite of mine: The-Internet at https://the-internet.herokuapp.com/, created by Dave Haeffner. Dave Haeffner is the author of the SeleniumGuidebook.com -- which comes in C#, Java, JavaScript, Python, and Ruby editions -- and the very helpful blog ElementalSelenium.com.

Next week, we will start using the information in "Cucumbers and Cheese" to start building an automation framework, starting with setting up a test environment. 


Happy Testing!

-T.J. Maher
Sr. QA Engineer, Software Engineer in Test
Meetup Organizer, Ministry of Testing - Boston

Twitter | YouTubeLinkedIn | Articles

No comments: