A summary of data about the Ruby ecosystem.

https://github.com/cucumber/cucumber-ruby

Cucumber for Ruby. It's amazing!
https://github.com/cucumber/cucumber-ruby

Keywords

cucumber polyglot-release ruby tidelift

Keywords from Contributors

activerecord activejob mvc rspec rubygems rack sinatra devise authorization crash-reporting

Last synced: about 22 hours ago
JSON representation

Repository metadata

Cucumber for Ruby. It's amazing!

README.md

Cucumber

Stand With Ukraine
OpenCollective
OpenCollective
Test cucumber
Code Climate
Coverage Status

Cucumber is a tool for running automated 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, you can use them to help improve communication, collaboration and trust on
your team.

This is the Ruby implementation of Cucumber. Cucumber is also available for JavaScript,
Java, and a lot of other languages. You can find a list of implementations here: https://cucumber.io/docs/installation/.

See CONTRIBUTING.md for info on contributing to Cucumber (issues, PRs, etc.).

Everyone interacting in this codebase and issue tracker is expected to follow the
Cucumber code of conduct.

Installation

Cucumber for Ruby is a Ruby gem. Install it as you would install any gem: add
cucumber to your Gemfile:

gem 'cucumber'

then install it:

$ bundle

or install the gem directly:

$ gem install cucumber

Later in this document, bundler is considered being used so all commands are using
bundle exec. If this is not the case for you, execute cucumber directly, without
bundle exec.

Supported platforms

  • Ruby 3.4
  • Ruby 3.3
  • Ruby 3.2
  • Ruby 3.1
  • TruffleRuby 24.0.0+
  • JRuby 9.4+ (with some limitations)

Ruby on Rails

Using Ruby on Rails? You can use cucumber-rails to bring Cucumber into your Rails project.

Usage

Initialization

If you need to, initialize your features directory with

$ bundle exec cucumber --init

This will create the following directories and files if they do not exist already:

features
├── step_definitions
└── support
    └── env.rb

Create your specification

Create a file named rule.feature in the features directory with:

# features/rule.feature

Feature: Rule Sample

  Rule: This is a rule

    Example: A passing example
      Given this will pass
      When I do an action
      Then some results should be there

    Example: A failing example
      Given this will fail
      When I do an action
      Then some results should be there

Automate your specification

And a file named rule_steps.rb in features/step_definitions with:

# features/step_definitions/steps.rb

Given('this will pass') do
  @this_will_pass = true
end

Given('this will fail') do
  @this_will_pass = false
end

When('I do an action') do
  :no_op
end

Then("some results should be there") do
  expect(@this_will_pass).to be true
end

Run Cucumber

$ bundle exec cucumber

To execute a single feature file:

$ bundle exec cucumber features/rule.feature

To execute a single example, indicates the line of the name of the example:

$ bundle exec cucumber features/rule.feature:5

To summarize the results on the standard output, and generate a HTML report on disk:

$ bundle exec cucumber --format summary --format html --out report.html

For more command line options

$ bundle exec cucumber --help

You can also find documentation on the command line possibilities in features/docs/cli.

Documentation and support

Copyright

Copyright (c) Cucumber and Contributors. See LICENSE for details.


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 1 day ago

Total Commits: 6,913
Total Committers: 454
Avg Commits per committer: 15.227
Development Distribution Score (DDS): 0.642

Commits in past year: 27
Committers in past year: 5
Avg Commits per committer in past year: 5.4
Development Distribution Score (DDS) in past year: 0.222

Name Email Commits
Aslak Hellesøy a****y@g****m 2476
Matt Wynne m****t@m****t 961
Vincent Pretre v****e@g****m 329
Joseph Wilk j****k@j****k 216
Steve Tooke s****e@h****s 205
Björn Rasmusson B****n@c****g 195
Jayson Smith g****b@n****m 193
Oleg Sukhodolsky o****3@g****m 136
Ben Mabey b****n@b****m 132
Joseph Wilk j****e@j****t 123
Luke Hill 2****l 90
Aurélien Reeves a****s@s****m 75
Jim van Musscher j****r@g****m 73
David Chelimsky d****y@g****m 59
Chris Parsons c****s@t****m 47
Andrea Nodari a****1@g****m 35
Christophe Bliard c****d@t****o 34
Peter Jaros p****a@d****m 34
Bryan Helmkamp b****n@b****m 33
ghnatiuk g****k@g****m 31
renovate[bot] 2****] 28
Daniel Cadenas d****s@g****m 28
Dana Scheider d****r@g****m 26
Aslak Hellesøy a****y@s****m 25
John Voloski j****i@c****r 23
Micah Geisel m****h@b****m 22
Jari Bakken j****n@g****m 21
Thomas Marek t****5@g****m 21
Mike Sassak m****k@g****m 21
Mads Buus Westmark o****e@b****t 20
and 424 more...

Committer domains:


Issue and Pull Request metadata

Last synced: 1 day ago

Total issues: 52
Total pull requests: 213
Average time to close issues: about 1 year
Average time to close pull requests: 15 days
Total issue authors: 35
Total pull request authors: 32
Average comments per issue: 5.9
Average comments per pull request: 1.37
Merged pull request: 153
Bot issues: 1
Bot pull requests: 62

Past year issues: 8
Past year pull requests: 36
Past year average time to close issues: about 18 hours
Past year average time to close pull requests: 10 days
Past year issue authors: 6
Past year pull request authors: 7
Past year average comments per issue: 1.38
Past year average comments per pull request: 1.03
Past year merged pull request: 13
Past year bot issues: 0
Past year bot pull requests: 10

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/cucumber/cucumber-ruby

Top Issue Authors

  • mattwynne (7)
  • mitchgrout (6)
  • aslakhellesoy (3)
  • ameliaanism (2)
  • pgundlupetvenkatesh (2)
  • RayChenLDL (2)
  • aurelien-reeves (2)
  • diabolo (1)
  • deivid-rodriguez (1)
  • renovate[bot] (1)
  • TylerRick (1)
  • nonkor (1)
  • mtasaka (1)
  • EnriqueRamirezbecxi (1)
  • luke-hill (1)

Top Pull Request Authors

  • luke-hill (57)
  • renovate[bot] (37)
  • dependabot[bot] (25)
  • aurelien-reeves (23)
  • vincent-psarga (17)
  • mattwynne (10)
  • aslakhellesoy (4)
  • orien (3)
  • olleolleolle (3)
  • nodeg (2)
  • tagliala (2)
  • amatsuda (2)
  • jagthedrummer (2)
  • kursataktas (2)
  • mishina2228 (2)

Top Issue Labels

  • :hourglass: stale (9)
  • :zap: enhancement (8)
  • :bug: bug (8)
  • :white_check_mark: accepted (7)
  • :bank: debt (6)
  • :pray: help wanted (4)
  • :baby_bottle: incomplete (3)
  • good first issue (2)
  • :no_good: wontfix (2)
  • :thinking: cannot reproduce (2)
  • :broken_heart: breaking change (2)
  • :question: question (2)
  • :wrench: build (1)
  • :vertical_traffic_light: needs tests (1)
  • :safety_pin: pinned (1)
  • :cucumber: core team (1)

Top Pull Request Labels

  • :robot: dependencies (35)
  • ruby (6)
  • :zap: enhancement (3)
  • :bug: bug (2)
  • :wrench: build (2)
  • :book: documentation (2)
  • spam (1)
  • :white_check_mark: accepted (1)
  • :cucumber: core team (1)
  • :bank: debt (1)

Package metadata

gem.coop: cucumber

Behaviour Driven Development with elegance and joy

  • Homepage: https://cucumber.io/
  • Documentation: http://www.rubydoc.info/gems/cucumber/
  • Licenses: MIT
  • Latest release: 10.2.0 (published 14 days ago)
  • Last Synced: 2025-12-22T13:33:16.329Z (2 days ago)
  • Versions: 198
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 94,528,482 Total
  • Docker Downloads: 62,817,033
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 0.21%
    • Downloads: 0.263%
    • Docker downloads count: 0.577%
  • Maintainers (1)
  • Funding:
    • https://opencollective.com/cucumber
rubygems.org: cucumber

Behaviour Driven Development with elegance and joy

  • Homepage: https://cucumber.io/
  • Documentation: http://www.rubydoc.info/gems/cucumber/
  • Licenses: MIT
  • Latest release: 10.2.0 (published 14 days ago)
  • Last Synced: 2025-12-22T13:33:16.405Z (2 days ago)
  • Versions: 198
  • Dependent Packages: 2,388
  • Dependent Repositories: 56,404
  • Downloads: 94,528,482 Total
  • Docker Downloads: 62,817,033
  • Rankings:
    • Dependent packages count: 0.022%
    • Dependent repos count: 0.147%
    • Stargazers count: 0.246%
    • Downloads: 0.248%
    • Average: 0.299%
    • Forks count: 0.424%
    • Docker downloads count: 0.704%
  • Maintainers (1)
  • Funding:
    • https://opencollective.com/cucumber
proxy.golang.org: github.com/cucumber/cucumber-ruby

  • Homepage:
  • Documentation: https://pkg.go.dev/github.com/cucumber/cucumber-ruby#section-documentation
  • Licenses: mit
  • Latest release: v10.2.0+incompatible (published 14 days ago)
  • Last Synced: 2025-12-22T13:33:17.023Z (2 days ago)
  • Versions: 169
  • Dependent Packages: 0
  • Dependent Repositories: 2
  • Rankings:
    • Forks count: 0.783%
    • Stargazers count: 0.928%
    • Dependent repos count: 3.506%
    • Average: 3.698%
    • Dependent packages count: 9.576%

Dependencies

Gemfile rubygems
  • rubocop = 1.32.0
  • rubocop-packaging ~> 0.3, = 0.5.1
cucumber.gemspec rubygems
  • cucumber-compatibility-kit ~> 9.2, >= 9.2.1 development
  • nokogiri ~> 1.13, >= 1.13.6 development
  • octokit ~> 4.22, >= 4.22.0 development
  • pry ~> 0.14, >= 0.14.1 development
  • rack-test >= 1.1.0, ~> 2.0 development
  • rake ~> 13.0, >= 13.0.6 development
  • rspec ~> 3.11, >= 3.11.0 development
  • simplecov ~> 0.21, >= 0.21.2 development
  • sinatra ~> 2.2, >= 2.2.0 development
  • syntax ~> 1.2, >= 1.2.2 development
  • test-unit ~> 3.5, >= 3.5.3 development
  • webrick ~> 1.7, >= 1.7.0 development
  • builder ~> 3.2, >= 3.2.4
  • cucumber-ci-environment ~> 9.0, >= 9.0.4
  • cucumber-core ~> 11.0, >= 11.0.0
  • cucumber-cucumber-expressions >= 15.1.1, < 17.0
  • cucumber-gherkin ~> 23.0, >= 23.0.1
  • cucumber-html-formatter ~> 19.1, >= 19.1.0
  • cucumber-messages >= 18, < 20
  • diff-lcs ~> 1.5, >= 1.5.0
  • mime-types ~> 3.4, >= 3.4.1
  • multi_test ~> 1.1, >= 1.1.0
  • sys-uname ~> 1.2, >= 1.2.2
.github/actions/test-ruby/action.yaml actions
  • ruby/setup-ruby v1 composite
.github/workflows/release.yaml actions
  • ./.github/actions/test-ruby * composite
  • actions/checkout v4 composite
  • cucumber/action-create-github-release v1.1.1 composite
  • cucumber/action-publish-rubygem v1.0.0 composite
.github/workflows/rubocop.yaml actions
  • actions/checkout v4 composite
  • ruby/setup-ruby v1 composite
.github/workflows/test.yaml actions
  • ./.github/actions/test-ruby * composite
  • actions/checkout v4 composite

Score: 34.248700836340305