Cucumber brought (natively) to your JavaScript stack.
It can run basic fatures inside both Node.js and web browsers.
It still needs a lot of work. Only a few feature elements are supported at the moment.
- Node.js 0.4.8 (tested on 0.4.7 too)
- npm 1.0.6
- Node.js 0.4.7, 0.4.8, 0.5.0-pre
- Google Chrome 13.0.772.0 (dev)
- Firefox 4.0.1
- Safari 5.0.5
And probably lots of other browsers.
$ node example/server.js
Then go to localhost:9797.
The only dependency of cucumber.js is Gherkin:
$ npm link
$ cd spec
$ ../node_modules/.bin/jasmine-node .
Features run through cucumber.js have to be executed one at a time for the moment. We are working on it :)
There is a common set of features shared between all cucumber implementations. Find more on the Github repository.
Ruby and Bundler are required for this to work.
$ git submodule update --init
$ bundle
$ rm -rf doc; ARUBA_REPORT_DIR=doc cucumber features/cucumber-features/core.feature -r features
$ open doc/features/cucumber-features/*.html # might open a lot of files ;)
This is still a work in progress; some step definition mappings are missing to run the core.feature with Cucumber.js.
You can run the following script which will execute cucumber.js recursively against all known passing features and "core.feature":
$ ./run_all_features.js
You can display debug messages by setting the DEBUG_LEVEL environment variable. It goes from 1 to 5. 5 will diplay everything, 1 will only print out the critical things.
$ DEBUG_LEVEL=5 ./run_all_features.js
$ DEBUG_LEVEL=5 ./cucumber.js features/cucumber-features/core.feature
It even works with Aruba:
$ rm -rf doc; DEBUG_LEVEL=5 ARUBA_REPORT_DIR=doc cucumber features/cucumber-features/core.feature -r features
$ open doc/features/cucumber-features/*.html # you'll see debug messages in Aruba-generated docs