Skip to content
Novus Examples
feature718 B

Gherkin — Background, Feature Tags and Hooks

A named Background whose two steps are prepended to all three scenarios, plus feature-level tags that every scenario inherits and scenario-level tags that only some carry. Tag filtering is where this file earns its keep: @slow selects one scenario by its own tag and all three by inheritance from the feature.

Preview — first 26 linesfeature
@checkout @slow
Feature: Cart persistence

  Background: a signed-in shopper with an empty cart
    Given a signed-in shopper "sample.user@example.com"
    And an empty cart

  @persistence
  Scenario: The cart survives a page reload
    When I add 1 of "NX-1042"
    And I reload the page
    Then my cart contains 1 item

  @persistence @slow
  Scenario: The cart survives signing out and back in
    When I add 2 of "NX-2087"
    And I sign out
    And I sign back in as "sample.user@example.com"
    Then my cart contains 2 items

  @wip
  Scenario: The cart merges with a guest cart
    Given a guest cart containing 1 of "NX-1042"
    When I sign in as "sample.user@example.com"
    Then my cart contains 1 item

Specifications

Seed
61200
Encoding
UTF-8
Line Endings
LF
Gherkin Dialect
en
Scenarios
3
Background Steps
2
Feature Tags
2
Scenario Tags
4
Named Background
true
Total Steps After Expansion
16

Testing contract

Expected to pass
Scenario
Resolve effective tags and step counts after Background and tag inheritance.
Expected result
All three scenarios inherit @checkout and @slow from the feature and start with the two Background steps, giving 5, 6 and 5 steps respectively.

What is a .feature file?

A .feature file holds a Gherkin specification: a business-readable, plain-text description of behaviour written as Feature, Background, Scenario, and Scenario Outline blocks whose steps begin with Given, When, Then, And, or But. Scenario Outlines are parameterised by an Examples table, and tags such as @smoke mark subsets of the suite. Cucumber, Behave, SpecFlow, and Behat all read the same grammar, with localised keyword sets available for non-English specifications.

How to use this file

Use an example .feature file to test Gherkin parsers, step-definition matchers, linters, and editor tooling — verifying tag inheritance, Scenario Outline expansion against the Examples table, docstring and data-table arguments, and behaviour on deliberately malformed keywords.

How to use this file for testing

“Gherkin — Background, Feature Tags and Hooks” is a deterministic Novus Examples fixture for Code parsing, Conversion testing, Editor testing. Short, known-correct source files in many languages with classes, functions, generics, enums, and error handling — for testing parsers, linters, formatters, language detection, and diff viewers.

Documented properties for this file: seed 61200 · UTF-8 · LF. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.

Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.

Test and coverage reports document their totals (suites, cases, passes, failures, skips, covered lines) in the spec table. Point your CI dashboard, coverage gate, or report converter at the file and assert those counts survive; format twins carry identical numbers so a conversion can be scored exactly.

Generated by generation/testing.py. Free for any use, no attribution required — license.