{"slug": "cucumber", "name": "Cucumber", "category": "dev-libs", "category_name": "Libraries and frameworks", "description": "", "recommenders": 4, "commenters": 5, "warners": 1, "score": 2.509, "rising": -1.31, "first": "2025-12-13", "latest": "2026-08-15", "why": "when I threw cucumber into the mix things suddenly got a lot more stable", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 4, "neutral": 0, "compare": 0, "warn": 1}, "spark": [0, 1, 0, 0, 1, 0, 2, 0, 0, 0, 0, 0], "listed": true, "loved": [], "caveat": "", "short_quote": "when I threw cucumber into the mix things suddenly got a lot more stable", "icon": false, "domain": "cucumber.io", "github_repo": null, "official_url": "https://cucumber.io", "pricing": "", "aliases": ["Cucumber"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 767927568, "item_id": 47995473, "url": "https://news.ycombinator.com/item?id=47995473", "by": "eterps", "date": "2026-05-03", "stance": "recommend", "quote": "I agree, Cucumber works really well with LLMs.", "excerpt": "I agree, Cucumber works really well with LLMs. > I use a mix of Markdown and Gherkin Gherkin also has a Markdown based syntax that is not well known: https://github.com/cucumber/gherkin/blob/main/MARKDOWN_WITH_GHERKIN.md I prefer that to the 'verbose' original syntax. MDG also renders nicely in code forges.", "context": "", "use_case": "specs in Gherkin with LLMs", "switched_from": "", "story": "Specsmaxxing \u2013 On overcoming AI psychosis, and why I write specs in YAML"}, {"id": 767925520, "item_id": 47995345, "url": "https://news.ycombinator.com/item?id=47995345", "by": "mike_hearn", "date": "2026-05-03", "stance": "recommend", "quote": "The nice thing about writing acceptance criteria this way is that they become executable and analyzable.", "excerpt": "A specification isn't a series of change requests! Using Jira as your source of truth is no different to just recording all your prompts. There's nothing you can easily review to spot contradictions or how things interact with one another. I've been doing \"specmaxxing\" for a few months now. Unlike the author I don't use Yaml, I use a mix of Markdown and Gherkin. If you haven't encountered Gherkin before, it's not new", "context": "does spec-driven development with LLMs", "use_case": "executable acceptance specs with Gherkin", "switched_from": "", "story": "Specsmaxxing \u2013 On overcoming AI psychosis, and why I write specs in YAML"}, {"id": 757252896, "item_id": 47328306, "url": "https://news.ycombinator.com/item?id=47328306", "by": "jaggederest", "date": "2026-03-10", "stance": "recommend", "quote": "check out cucumber / gherkin - very old school regex-to-code plain english kind of system.", "excerpt": "Anyone who wants a more programmatic version of this, check out cucumber / gherkin - very old school regex-to-code plain english kind of system.", "context": "", "use_case": "plain-English test specs", "switched_from": "", "story": "You hired the AI to write the tests. Of course they pass"}, {"id": 740095971, "item_id": 46255998, "url": "https://news.ycombinator.com/item?id=46255998", "by": "Alan01252", "date": "2025-12-13", "stance": "recommend", "quote": "when I threw cucumber into the mix things suddenly got a lot more stable", "excerpt": "I've been heavily vibe coding for a couple of personal projects. A free kids typing game and bringing back a multiplayer game I played a lot as a kid back to life both with pretty good success. Things I personally find work well. 1. Chat through with the AI first the feature you want to build. In codex using vscode I always switch to chat mode, talk through what I am trying to achieve and then once myself and the AI ", "context": "", "use_case": "BDD testing for AI-written code", "switched_from": "", "story": "Ask HN: How can I get better at using AI for programming?"}]}], "caveats": [{"label": "", "summary": "", "quotes": [{"id": 789040065, "item_id": 49315004, "url": "https://news.ycombinator.com/item?id=49315004", "by": "MoreQARespect", "date": "2026-08-15", "stance": "warn", "quote": "I've tried using cucumber before and it reminds me of COBOL", "excerpt": "I don't think so. Natural language is vague and repetitive. I used hitchstory (YAML based stories) for doing this coz it's terse and typed. I've tried using cucumber before and it reminds me of COBOL - which also had the same idea of making code more accessible via a \"natural language-ish\" interface.", "context": "", "use_case": "BDD testing", "switched_from": "", "story": "Yadda 3.0.0: BDD in the Age of AI Agents"}]}], "who": [{"by": "mike_hearn", "context": "does spec-driven development with LLMs", "url": "https://news.ycombinator.com/item?id=47995345", "date": "2026-05-03"}], "tags": [], "use_cases": ["bdd testing", "specs in gherkin with llms", "executable acceptance specs with gherkin", "plain-english test specs", "bdd testing for ai-written code"], "compared": [], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=47994012", "title": "Specsmaxxing \u2013 On overcoming AI psychosis, and why I write specs in YAML", "mentions": 2}, {"url": "https://news.ycombinator.com/item?id=49310495", "title": "Yadda 3.0.0: BDD in the Age of AI Agents", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47327559", "title": "You hired the AI to write the tests. Of course they pass", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46255285", "title": "Ask HN: How can I get better at using AI for programming?", "mentions": 1}], "sentiment_by_month": {"2025-11": {}, "2025-12": {"recommend": 1}, "2026-01": {}, "2026-02": {}, "2026-03": {"recommend": 1}, "2026-04": {}, "2026-05": {"recommend": 2}, "2026-06": {}, "2026-07": {}, "2026-08": {"warn": 1}, "2026-09": {}, "2026-10": {}}, "quotes": [{"id": 789040065, "item_id": 49315004, "url": "https://news.ycombinator.com/item?id=49315004", "by": "MoreQARespect", "date": "2026-08-15", "stance": "warn", "quote": "I've tried using cucumber before and it reminds me of COBOL", "excerpt": "I don't think so. Natural language is vague and repetitive. I used hitchstory (YAML based stories) for doing this coz it's terse and typed. I've tried using cucumber before and it reminds me of COBOL - which also had the same idea of making code more accessible via a \"natural language-ish\" interface.", "context": "", "use_case": "BDD testing", "switched_from": "", "story": "Yadda 3.0.0: BDD in the Age of AI Agents"}, {"id": 767927568, "item_id": 47995473, "url": "https://news.ycombinator.com/item?id=47995473", "by": "eterps", "date": "2026-05-03", "stance": "recommend", "quote": "I agree, Cucumber works really well with LLMs.", "excerpt": "I agree, Cucumber works really well with LLMs. > I use a mix of Markdown and Gherkin Gherkin also has a Markdown based syntax that is not well known: https://github.com/cucumber/gherkin/blob/main/MARKDOWN_WITH_GHERKIN.md I prefer that to the 'verbose' original syntax. MDG also renders nicely in code forges.", "context": "", "use_case": "specs in Gherkin with LLMs", "switched_from": "", "story": "Specsmaxxing \u2013 On overcoming AI psychosis, and why I write specs in YAML"}, {"id": 767925520, "item_id": 47995345, "url": "https://news.ycombinator.com/item?id=47995345", "by": "mike_hearn", "date": "2026-05-03", "stance": "recommend", "quote": "The nice thing about writing acceptance criteria this way is that they become executable and analyzable.", "excerpt": "A specification isn't a series of change requests! Using Jira as your source of truth is no different to just recording all your prompts. There's nothing you can easily review to spot contradictions or how things interact with one another. I've been doing \"specmaxxing\" for a few months now. Unlike the author I don't use Yaml, I use a mix of Markdown and Gherkin. If you haven't encountered Gherkin before, it's not new", "context": "does spec-driven development with LLMs", "use_case": "executable acceptance specs with Gherkin", "switched_from": "", "story": "Specsmaxxing \u2013 On overcoming AI psychosis, and why I write specs in YAML"}, {"id": 757252896, "item_id": 47328306, "url": "https://news.ycombinator.com/item?id=47328306", "by": "jaggederest", "date": "2026-03-10", "stance": "recommend", "quote": "check out cucumber / gherkin - very old school regex-to-code plain english kind of system.", "excerpt": "Anyone who wants a more programmatic version of this, check out cucumber / gherkin - very old school regex-to-code plain english kind of system.", "context": "", "use_case": "plain-English test specs", "switched_from": "", "story": "You hired the AI to write the tests. Of course they pass"}, {"id": 740095971, "item_id": 46255998, "url": "https://news.ycombinator.com/item?id=46255998", "by": "Alan01252", "date": "2025-12-13", "stance": "recommend", "quote": "when I threw cucumber into the mix things suddenly got a lot more stable", "excerpt": "I've been heavily vibe coding for a couple of personal projects. A free kids typing game and bringing back a multiplayer game I played a lot as a kid back to life both with pretty good success. Things I personally find work well. 1. Chat through with the AI first the feature you want to build. In codex using vscode I always switch to chat mode, talk through what I am trying to achieve and then once myself and the AI ", "context": "", "use_case": "BDD testing for AI-written code", "switched_from": "", "story": "Ask HN: How can I get better at using AI for programming?"}]}