Как я понимаю ваш вопрос, вы ищете способ выполнить некоторые инструкции по настройке до запуска вашей функции / сценария. Проблема заключается в том, что сценарий и функции по своему замыслу изолированы. Чтобы гарантировать выполнение чего-либо до запуска сценария, определите раздел Background
. AFAIK, вы не можете применить один и тот же фон к функциям. Сценарии сгруппированы по элементам, и каждая функция может указывать Background
, который выполняется перед каждым сценарием. Я просто скопировал и вставил ваши установочные файлы везде, где вам это нужно:
Background:
Given I have the base data:
| User | Status | other fields |
| Foo | Active | ... |
| Bar | Disabled | ... |
Если в настройке задействовано множество шагов, вы можете определить один шаг, который вы развернете, чтобы выполнить все "background" шаги примерно так:
Scenario: test something
Given my test setup runs
Затем реализуйте my test setup runs
примерно так:
s.Step(`^my test setup runs$`, func() godog.Steps {
return godog.Steps{
"user test data is loaded",
"other things are set up",
"additional data is updated",
"update existing records",
"setup was successful",
}
})
Это должно работать.
Of Конечно, чтобы избежать запуска каждого сценария с этим Given my test setup runs
, вы можете просто запустить каждый файл объектов с помощью:
Background:
Given my test setup runs
Это обеспечит выполнение настройки перед каждым сценарием. В результате получится: 2 дополнительные строки в начале каждого файла объектов, и у вас все настроено на go.