Bobcat is a framework dedicated to automated functional testing of web applications.
It wraps Selenium, so anything possible in raw Selenium can be done with Bobcat, including running it on all supported browsers, Selenium Grid, cloud providers like SauceLabs, Cross Browser Testing, BrowserStack etc. You can also utilize Appium for mobile testing.
Bobcat is implemented in Java and allows the test development in pure JUnit or via Cucumber-JVM for BDD-oriented people.
Bobcat comes with a handy set of utilities and accelerators that will help you develop your tests faster.
Since Cognifide expertises in development on top of Adobe Experience Manager (AEM), Bobcat accelerates test development for this platform, especially when it comes to AEM authoring. The framework provides dedicated modules which allow you to automate almost every action on the AEM author side.
Under the hood
Bobcat relies heavily on the Page Object pattern, which is an embedded concept in most of its internals.
We can model our websites easily and create a neat Page Object tree structure, scoping Page Objects inside other Page Objects, reducing the effort of selector maintenance. We make all the magic possible thanks to dependency injection with Google’s Guice.
Additionally, we wanted to make it as scalable as possible, so thread-safety was one of the key principles during the development.