HACKER Q&A
📣 floppydisc

BDD and Gherkin tests, do they provide value in the real world?


Recently stumbled upon BDD and the process of describing software from behaviour. I know there are seriously prolific software engineers amongst the Hacker News crowd and I could use a second opinion from within the industry.

What are your thoughts on BDD in general, with everything included (Gherkin, Cucumber etc.). What benefits have you yourself experienced (if any) or perhaps disadvantages of such ideas?


  👤 hitchstory Accepted Answer ✓
I like the overall idea a lot but I felt that the Gherkin language itself hamstrings the process - for four main reasons:

* Excessive verbosity

* Not type safe

* It lacks story abstractions (i.e. you can't flexibly create variations on a scenario, extend existing scenarios, etc.).

* You need to fiddle with regexes.

A side effect of these semantic/syntactic problems is that gherkin stories end up being too vague to be useful - i.e. the meat of the story is often missing.

I created a StrictYAML based alternative with python that I think has all of the benefits, fixes those 4 problems and doesnt suffer from traditional "YAML" problems: https://github.com/hitchdev/hitchstory

I call this "BDD with meat".


👤 breckenedge
I last gave it a good try about 12 years ago. In principle I liked it, but in practice it’s fairly verbose and slow. I much prefer Cypress/Capybara style testing.