Я бы разделил это на многополярные сценарии, поскольку каждый сценарий должен проверять одну вещь.
Также у вас всегда должен быть шаг «Когда».Данное условие является предварительным условием и не всегда необходимо, когда это действие, а затем - ожидаемый результат этого действия.Без шага Когда вы говорите, что у вас ожидаемый результат, если вы ничего не делаете?
Я бы написал файл функций примерно так:
Feature: Add Item
As a stock control manager
I want to be able to add items to an inventory
So that I have a catalogue of al items in stock
Business Rules:
- Name, number and date are mandatory data
- category and description are optional
Sceanrio: Add item witout category
When I add an item without a category
Then the Item will be saved
Sceanrio: Add item without descritpion
When I add an item without a descritpion
Then the Item will be saved
Sceanrio: Add item without name
When I add an item without a name
Then the item will not be saved
And I will be informed the name is maditory
Sceanrio: Add item without number
When I add an item without a number
Then the item will not be saved
And I will be informed the number is maditory
Sceanrio: Add item without date
When I add an item without a date
Then the item will not be saved
And I will be informed the date is maditory