One of the core aspects of Bronto Engineering culture is dedication to community. We rely heavily on open source projects, and one of the ways we give back to the open source community is by sponsoring technical meetups.
Our meetups do much more than just offer pizza, drinks, and a space; they provide a voice and a sounding board for the open source community, a way to gather feedback and collaborate on new ideas. The latest Bronto-sponsored Triangle Testing and Automation Users Group (TriTAUG) meetup is a great example of the impact these gatherings can have.
Community member Stuart Robinson contacted the TriTAUG organizers and asked to give a presentation on a new testing automation tool he was developing called Fammer. Stuart had been developing Fammer in his spare time to speed up and automate the process of locating web elements used by web-testing technologies such as Selenium.
Selenium helps developers write software that can open and operate web browsers in order to simulate user actions. Imagine pressing a button that opens a web browser, logs into a preset web application, and immediately sails through actions such as clicking buttons and filling in forms. You can quickly begin to see its power.
Automated Selenium testing runs much faster than manual testing, but that speed comes at a price: development time. Test developers must manually specify every button, field, and text string in the website that their test will use. Mapping these HTML objects to Selenium web elements can be tricky, depending on the paths to the object and the complexity of the webpage. That’s where Fammer comes in. Fammer sits in between the test code and the web browser and automatically parses the website HTML to java code to allow developers instant access to all possible web objects on a specific page.
The Fammer project that Stuart presented was originally developed as a proof of concept, but community members at the meetup immediately saw the potential of an integrated development environment (IDE) plugin powered by Fammer technology. Having access to web element locators without switching to a browser and compiling the path to the objects manually could greatly decrease the development time of automated tests while increasing the stability. The overall consensus of the group was that Fammer was a great proof of concept and would be a valuable addition to the Selenium test development process. Armed with feedback and enthusiasm from the community, Stuart left the meetup with a much clearer roadmap for his project.
When you think about open source, you might only think of projects with millions of users, such as software associated with the Apache Foundation, Linux Foundation, or WordPress. But the open source community is much more than that. Github hosts more than 21 million open source code repositories, and they each tell a story of a developer just like Stuart, attempting to solve a problem.
Whether you attend presentations on mature software with millions of users or give feedback and advice on a brand new project, it’s great to be a part of a community that values continual improvement.
You can follow the Fammer project at http://fammerhq.tumblr.com/.