Loading...
Loading...
Use when drafting, reviewing, or improving Gherkin, Cucumber scenarios, BDD acceptance criteria, feature examples, Scenario Outlines, Backgrounds, Rules, Doc Strings, Data Tables, tags, or Gherkin embedded in Markdown.
npx skill4agent add intent-driven-dev/skills gherkin-authoring.feature.featuregherkinFeatureRuleBackgroundScenarioExampleScenario OutlineExamples| Construct | Use for | Syntax note |
|---|---|---|
| One high-level capability per feature document or block | Requires |
| Group scenarios under one business rule | Requires |
| One concrete example | Requires |
| Short shared context for following scenarios | Requires |
| Same behavior with varied data | Requires |
| Data rows for an outline | Requires |
| Known state or precondition | No |
| Event or action | No |
| Observable outcome | No |
| Continue the previous step type | No |
| Bullet-like step list | Use sparingly for list-style setup |
| Group or filter features/scenarios | Place above the item tagged |
| Line comment | Line comments only; no block comments |
| Doc String | Passed as final step argument |
| ` | ` | Data Table |
GivenGivenWhenThenAndButGivenWhenThenBackgroundRuleFeatureScenario Outline|\|\n\\## Acceptance Criteria
```gherkin
Feature: Password reset
Rule: Reset links expire after their allowed lifetime
Scenario: Customer resets their password before the link expires
Given Priya has requested a password reset
And the reset link is still valid
When Priya chooses a new password with the reset link
Then she can sign in with the new password
Scenario: Customer uses an expired reset link
Given Priya has requested a password reset
And the reset link has expired
When Priya tries to choose a new password with the reset link
Then she is told the reset link has expired
And her password is unchanged
```| Mistake | Fix |
|---|---|
| Complaining about Markdown around a Gherkin block | Preserve the wrapper and work only on the Gherkin section. |
| Returning only a fenced Gherkin block when the input was Markdown | Return the original Markdown wrapper with only the Gherkin content changed. |
| Add the missing colon after |
| Move interaction to |
| Prefer an observable result, such as an order confirmation. |
Reusing the same step text for | Change the wording so the domain meaning is distinct. |
| Long scripts with many UI actions | Raise the abstraction and keep the scenario to the behavior. |
Large | Use higher-level context or split scenarios by |