Cucumis
A Cucumber and Gherkin implementation for Erlang.
Features
- Full Gherkin syntax support
- [X] Feature, Rule, Scenario, and Background
- [X] Scenario Outline and Examples
- [X] Tags
- [X] Data tables and doc strings
- [ ] Clear and readable parser error messages
- Easy and flexible step definitions
- [X] Easy regex capture groups for step arguments
- [ ] Access to step arguments, such as doc strings and tables
- Test case execution
-
[X] Supports multiple, composable step definition implementations
- [X] Configurable at runtime
-
[ ] Configurable in
sys.config
- [X] Background steps for rules executes for each scenario
- [ ] Common test integration
- [ ] EUnit integration
-
[ ] Test case traceability
- [ ] Full step log
- [ ] Original line numbers reported for failing steps
-
[X] Supports multiple, composable step definition implementations
Parsing
2> cucumis:parse("test/files/guess_the_word.feature").
#{name => <<"Guess the word">>,
rules =>
[#{scenarios =>
[#{name => <<"Maker starts a game">>,type => scenario,
steps =>
[{'when',<<"the Maker starts a game">>,[]},
{then,<<"the Maker waits for a Breaker to join">>,[]}]},
#{name => <<"Breaker joins a game">>,type => scenario,
steps =>
[{given,<<"the Maker has started a game with the word \"silky\"">>,
[]},
{'when',<<"the Breaker joins the Maker's game">>,[]},
{then,<<"the Breaker must guess a word with 5 characters">>,
[]}]}]}]}Running Feature Tests
EUnit
TBD
Common Test
TBD
Manual
TBD