CheckOps
Geb
Geb is an Apache-2.0 browser automation library for Groovy that combines WebDriver, jQuery-like content selection and page objects, now developed under the Apache Groovy project.
Latest public signals
Not refreshed yet. Refresh reads the public site and, when the entry has a GitHub repository, the latest release.
Introduction
Geb (pronounced ‘jeb’) is a browser automation solution that, in the project’s words, brings together the power of WebDriver, the elegance of jQuery content selection, the robustness of page object modelling and the expressiveness of Groovy.
Geb’s repository now lives at apache/groovy-geb and its documentation at groovy.apache.org/geb, with questions on the geb-users@groovy.apache.org mailing list and GitHub Discussions. It integrates with Spock, JUnit and TestNG, and is popular in Grails applications.
Pages are declared as classes with a url, an at checker and a content block of named elements, and the $() navigator selects elements with CSS-like syntax.
In the quality loop it covers end-to-end web testing for Groovy and JVM teams.
The source code is at apache/groovy-geb on GitHub under the Apache-2.0 licence, with about 1,200 stars; the most recent commit was on 10 November 2026.
Features
- Navigator API: jQuery-like
$()selection. - Page objects:
content,atchecks and modules. - WebDriver based: Any WebDriver browser or grid.
- Spock integration: Readable specifications.
- Groovy DSL: Concise, dynamic test code.
Pros
- Expressive: Very short page definitions.
- Free to use: Open source under the Apache-2.0 licence, so the core tool costs nothing to use.
- Actively maintained: The repository had commits as recent as 10 November 2026.
Cons
- Groovy required: Less appealing for Java- or Kotlin-only teams.
- Niche community: Smaller than mainstream frameworks.
Usage and Links (Example)
class LoginSpec extends GebSpec {
def "user signs in"() {
when: go "/login"; $("#email").value("user@example.com"); $("button", type: "submit").click()
then: $("h1").text() == "Welcome"
}
}
Resources:
Pricing
Geb is free and open source under the Apache-2.0 licence.
Recommended for?
- Groovy, Grails and Spock teams.
- Not a fit for non-JVM projects.
Conclusion
Geb remains an elegant WebDriver library for Groovy and is actively developed within the Apache Groovy project.
On CheckOps, Geb is filed under the End-to-end & functional stage. Related tools listed here include Selenide, Selenium, Spock Framework, Serenity BDD, Atata and Capybara. Before choosing, compare them on licence, supported languages and platforms, hosting model, and how well each fits your existing CI pipeline. Facts on this page were checked against the official website, documentation and repository on 11 November 2026; statements the vendor makes about its own product are marked as vendor claims.
Alternatives
Other tools on CheckOps that cover similar ground. Open a page, or compare one with Geb side by side.
SSelenideSelenide is an MIT-licensed Java UI testing framework on top of Selenium WebDriver, with a concise fluent API, automatic waiting and built-in screenshots for stable browser tests.Compare with Geb
SSeleniumA browser automation framework and ecosystem.Compare with Geb
SSpock FrameworkSpock is an Apache-2.0 BDD-style testing and specification framework for Java and Groovy applications, with given/when/then blocks, powerful data-driven tests and built-in mocking, running on the JUnit Platform.Compare with Geb
SSerenity BDDSerenity BDD is an Apache-2.0 Java library for writing automated acceptance tests with rich living-documentation reports, integrating with JUnit, Cucumber and Selenium and supporting the Screenplay pattern.Compare with Geb
AAtataAtata is an Apache-2.0 C#/.NET test automation framework built around a fluent page object pattern on Selenium WebDriver, with built-in logging, triggers and reporting integrations.Compare with Geb- CCapybaraAcceptance test framework for web applications.Compare with Geb