HTTPS clone URL
Subversion checkout URL
Clone this wiki locally
Several tools recognize Gherkin source (feature files) in a similar way to the Gherkin library itself.
All of the tools below support all of the i18n translations of the Gherkin grammar.
- Cucumber TextMate Bundle
- JetBrains RubyMine
- (Code generator not part of the project)
- Generated Lexer
- Cucumber Netbeans Plugin
- IDE: VS2008, VS2010, VS2012 and MonoDevelop
- Runtime: .NET, Mono, Silverlight, Windows Phone 7 (beta)
- Test execution: NUnit, MSTest, xUnit, MbUnit
- Gherkin Editor
- For building living documentation systems using Gherkin feature files
These tools don’t (yet) support all of Gherkin’s 40 translations. (It would be easy for their maintainers to make them support it – see Tool Developers below).
If you’re developing a tool that understands Gherkin, please make it i18n aware. This is easy if you generate the code that recognises Gherkin keywords. The gherkin Ruby Gem contains all the translations and makes them available via a simple API. Look at the code generators from some of the tools above for examples.
Basing your tool on code generation lets you easily update your tool when Gherkin gets a new language or a synonym is added to an existing one. All it takes is a little bit of Ruby/Rake and an Erb template that uses
Gherkin::I18n.keyword_regexp to generate a Python, Java, C# or whatever file that is part of your tool.
Some tool developers have built-in handling of fragments like
In order to,
As a and
I want. (This is a common narrative style for feature headers). We recommend that you do not try to recognize or highlight this. People should be free to choose the wording they want. Moreover, we don’t have translations of those fragments, and even if we did, this style is too prescriptive.