Описание сценария Specflow на длинное

Раньше я создавал сценарии, в которых в названии сценария я объяснял, что такое сценарий. Например:

Сценарий: Когда во время переключения контекста контекст не совпадает и пользователю показывается список фактов для удаления, факты должны быть удалены, если пользователь выбрал их в списке.

Но проблема в том, что сценарии становятся все более сложными, а имена сценариев все длиннее и длиннее. Следует ли мне продолжать писать длинные имена или у вас есть лучшее предложение?


person Vajda    schedule 21.06.2012    source источник


Ответы (2)


Сценарий, описанный в вопросе, сильно зависит от системы. Какое поведение вы указываете?

Тем не менее, если использовать то, что у вас есть, я думаю, что это всего лишь языковая проблема.

Думаю, я бы просто переименовал его примерно так:

Scenario: Should be able to delete non-matching facts

Он более общий, но все же сообщает вам, что происходит, когда кто-то читает сценарий (с учетом контекста функции и других связанных сценариев).

В конце концов, длина названия сценария не имеет значения - столько же, сколько и тех, кто участвует в разработке (вспомните трех сторонников: разработчика, тестировщика и заинтересованного лица из бизнеса); все знают, что это значит. Но очевидно, что чем легче это понять кому-то другому, тем лучше.

person SaxonMatt    schedule 21.06.2012

Ну, похоже, вы повторяете себя.

Приведенный ниже тест, вероятно, не соответствует тому, что вы имеете в виду. Но сделайте вид, что это так.

Если ваш сценарий выглядит так:

Given the current context is Green
And the following list of facts for delete are selected
   | Fact | Checkboxstate |
   | A    | checked       |
   | B    |               |
   | C    | checked       |
   | D    |               |
When I perform a context switch to Orange
Then the following facts should be deleted
   | Fact |
   | A    |
   | C    |
And the following facts should not be deleted
   | Fact |
   | B    |
   | D    |

Тогда тест будет чуть более сложным, чем предложенный вами заголовок сценария. (если тест намного сложнее, тогда это может быть другая проблема)

Вместо этого постарайтесь, чтобы названия функций и сценариев были краткими и содержательными: например,

Feature: Context Switching

    Scenario: New Context should be enabled
    Scenario: Selected facts should be deleted
    etc.
person perfectionist    schedule 21.06.2012
comment
Вы, наверное, меня неправильно поняли. У меня нет проблем с шагами в тесте. Я хочу сократить названия сценариев, но все же объяснить, что происходит в этом конкретном сценарии. - person Vajda; 21.06.2012
comment
Вот что я пытался объяснить в конце. Ваш сценарий, вероятно, лучше всего назвать. Выбранные факты должны быть удалены внутри функции, которая называется чем-то вроде переключения контекста. - person perfectionist; 21.06.2012