Skip to content
@cucumber

Cucumber

Open source tool for running plain-language automated acceptance tests.

OpenCollective OpenCollective

Cucumber

Welcome to Cucumber 👋

Cucumber is a tool for running automated acceptance tests, written in plain language. Because they're written in plain language, they can be read by anyone on your team. Because they can be read by anyone, they help improve communication, collaboration and trust on your team. 💖

Cucumber Gherkin Example

Cucumber was built to support Behaviour-Driven Development (BDD).

If you want to get started using Cucumber, you should head over to the docs or watch our Cucumber School video series.

Cucumber is open source, built and maintained by people just like you! All of the source code for Cucumber is under this GitHub organization.

Everyone interacting in these codebases and issue trackers is expected to follow the Cucumber Community Code of Conduct.

Get in touch

If you have questions about using Cucumber, or ideas for how we could improve it, head over to our GitHub Discussions forum. If you want chat with the maintainers, the best place for that is to join the Community Discord.

If you've found a bug in Cucumber, or have an idea for a new feature, you can raise an issue on GitHub.

We currently support four official versions of Cucumber:

Other popular Cucumber implementations, maintained by other organisations, are:

If you're not sure where to raise your issue, you can use our common repository, or come and chat with us in the Community Discord.

Get involved 🌈

The Cucumber team is committed to tackling the structural racism and sexism in open source, and providing a fun and welcoming environment for new contributors.

Contributions don't have to be code. If you think you'd like to help, book some time with our project lead @mattwynne and have a chat about what you're interested in. We can find something useful for you to do!

Sponsors

Thanks to all these companies who sponsor this project.

*This is a donation. No goods or services are expected in return. Any requests for refunds for those purposes will be rejected.

Backers

Thanks to all these individuals who have backed this project.

*This is a donation. No goods or services are expected in return. Any requests for refunds for those purposes will be rejected.

Pinned Loading

  1. cucumber-jvm cucumber-jvm Public

    Cucumber for the JVM

    Java 2.7k 2k

  2. cucumber-js cucumber-js Public

    Cucumber for JavaScript

    TypeScript 5.1k 1.1k

  3. cucumber-ruby cucumber-ruby Public

    Cucumber for Ruby. It's amazing!

    Ruby 5.2k 1.1k

  4. godog godog Public

    Cucumber for golang

    Go 2.4k 258

  5. website website Public

    The website for Cucumber

    MDX 3 5

  6. common common Public

    A home for issues that are common to multiple cucumber repositories

    3.4k 690

Repositories

Showing 10 of 121 repositories
  • messages Public

    A message protocol for representing results and other information from Cucumber

    cucumber/messages’s past year of commit activity
    C# 26 MIT 19 28 8 Updated Feb 13, 2025
  • gherkin-utils Public

    API for working with Gherkin documents

    cucumber/gherkin-utils’s past year of commit activity
    TypeScript 13 MIT 5 5 3 Updated Feb 13, 2025
  • gherkin-streams Public

    Stream utilities to read Gherkin parser output.

    cucumber/gherkin-streams’s past year of commit activity
    TypeScript 3 2 0 9 Updated Feb 13, 2025
  • gherkin Public

    A parser and compiler for the Gherkin language.

    cucumber/gherkin’s past year of commit activity
    C 206 MIT 68 44 9 Updated Feb 13, 2025
  • ci-environment Public

    Detect CI Environment from environment variables

    cucumber/ci-environment’s past year of commit activity
    Java 11 MIT 7 7 10 Updated Feb 13, 2025
  • fake-cucumber Public

    Tool to generate test data for cucumber

    cucumber/fake-cucumber’s past year of commit activity
    TypeScript 2 MIT 0 0 5 Updated Feb 13, 2025
  • cucumber-expressions Public

    Human friendly alternative to Regular Expressions

    cucumber/cucumber-expressions’s past year of commit activity
    Java 167 MIT 52 20 (4 issues need help) 13 Updated Feb 13, 2025
  • message-streams Public

    Stream utilities to read and write Cucumber Message objects to/from streams.

    cucumber/message-streams’s past year of commit activity
    TypeScript 1 2 0 6 Updated Feb 13, 2025
  • monaco Public

    Configure Monaco editor to use cucumber-language-service

    cucumber/monaco’s past year of commit activity
    TypeScript 16 MIT 4 1 3 Updated Feb 13, 2025
  • cucumber-jvm Public

    Cucumber for the JVM

    cucumber/cucumber-jvm’s past year of commit activity
    Java 2,727 MIT 2,026 51 (1 issue needs help) 8 Updated Feb 13, 2025