Robot Framework vs cucumber-js: open-source BDD tools compared
Metrics as of , from the GitHub or GitLab API of each repository. Refreshed monthly.
Summary
Robot Framework: Python automation framework with a plain text, keyword-based syntax for acceptance testing, ATDD and RPA.
cucumber-js: JavaScript implementation of Cucumber for running plain-language Gherkin tests on Node.js.
Both are listed under BDD. The table gives repository metrics from the GitHub API with their fetch date, then the documented facts used for every comparison in this category, each linked to the README or docs page it comes from. A cell reads "not documented" when the fact was not found in the project's documentation; that does not mean the feature is absent.
Side by side
| Fact | Robot Framework | cucumber-js |
|---|---|---|
| Stars | 11,9061 | 5,3941 |
| Forks | 2,5661 | 1,1121 |
| Contributors | 2371 | 2031 |
| Last release | 2026-09-141 | 2026-08-041 |
| Last commit | 2026-09-211 | 2026-09-221 |
| Commits in 90 days | 2021 | 1001 |
| License | Apache-2.01 | MIT1 |
| Primary language | Python1 | TypeScript1 |
| Status | active1 | active1 |
| Languages for writing tests | Robot Framework plain text syntax; Python as the primary language for extending it source: README | JavaScript; TypeScript and other languages that transpile to JavaScript source: Docs: Transpiling |
| Specification format | Plain text keyword-driven test and task files (.robot), extended with libraries source: README | Plain language Gherkin feature files, with step definitions in code source: README |
| Parallel or distributed execution | External tools, developed as separate projects, for parallel execution source: Docs: Robot Framework User Guide | --parallel option runs scenarios in worker threads source: Docs: Parallel |
| CI integration | xUnit compatible output for CI servers such as Jenkins; Jenkins Robot Framework plugin source: Docs: Robot Framework User Guide | JUnit formatter output for CI platforms to pick up results source: Docs: Formatters |
| Report formats | HTML log and report, XML and JSON output files, xUnit compatible XML source: Docs: Robot Framework User Guide | Summary, progress, pretty, HTML, message (NDJSON), JSON, JUnit XML, usage source: Docs: Formatters |
| Install method | pip (pip install robotframework) source: README | npm (npm install @cucumber/cucumber) source: README |
1 Fetched from the GitHub or GitLab API on . Hover a value for its own date.
When each fits
Written from each project's documented scope, not from preference. Neither tool is ranked.
Robot Framework
Fits projects that automate acceptance testing, acceptance test driven development or robotic process automation; its README describes a plain text syntax extended with generic and custom libraries. source: README
cucumber-js
Fits projects that write automated tests in plain language for Node.js; its README describes the JavaScript implementation of Cucumber running on maintained versions of Node.js. source: README
More on these tools
Sources
- GitHub REST API: repository, read
- GitHub REST API: repository, read
- GitHub REST API: contributors, read
- GitHub REST API: contributors, read
- GitHub REST API: latest release, read
- GitHub REST API: latest release, read
- GitHub REST API: commits, read
- GitHub REST API: commits, read
- README, read
- Docs: Transpiling, read
- README, read
- Docs: Robot Framework User Guide, read
- Docs: Parallel, read
- Docs: Formatters, read
Documented facts collected 2026-09-22. See the methodology for how metrics and facts are gathered.