kyuri - plain words go in, VowsJS stubs come out
kyuri is a node.js Cucumber implementation with a few extra asynchronous keywords. it supports 160+ languages and exports to VowsJS stubs
A feature in kyuri might look like this...
Feature: Addition
In order to avoid silly mistakes
As a math idiot
I want to be told the sum of two numbers
Scenario: Add two numbers
Given I have entered 50 into the calculator
And I have entered 70 into the calculator
When I press add
Then the result should be 120 on the screen
Should output:
vows.describe('Addition').addBatch({
"Add two numbers": {
"GIVEN I have entered 50 into the calculator": {
topic: function () {
/* Setup your test conditions here */
},
"AND I have entered 70 into the calculator": {
topic: function () {
/* Setup your test conditions here */
},
"WHEN I press add": {
topic: function () {
/* Setup your test conditions here */
},
"THEN the result should be 120 on the screen": function () {
/* Setup your test assertions here */
},
}
}
}
}
}).export(module);
gherkin is almost fully supported by kyuri. kyuri can push and pull updates from the gherkin project, check out i18n.js and i18n-generator.rb
(we are CLOSE to gherkin compliance, we will be working on 100% in v0.2.0)
curl http://npmjs.org/install.sh | sh
npm install kyuri
###VowsJS
Vows is a popular Behavior Driven Development framework for node.js. Vows was built from the ground up to test asynchronous code. It executes your tests in parallel when it makes sense, and sequentially when there are dependencies.
Instead of crafting your VowsJS code from hand (using JavaScript), kyuri allows you to auto-generate Vows stubs.
###Protip: kyuri is meant to be a low-level tool. if you want to compose Features and Scenarios using kyuri and a rich user-interface check out our other Node Knockout Entry, prenup.
