написание истории JBehave - PullRequest
0 голосов
/ 14 марта 2012

Этот вопрос не о REST , а об использовании возвращенного значения из вызова, сделанного в @When, в последующем @Then.

Я смотрю на использование JBehaveпроверить некоторые звонки в REST API.Сначала есть post для создания пользователя

When I create a user with name Charles Darwin

Как я понимаю REST, и это то, что делает Atom api , идентификатор возвращается в заголовке местоположения, например/user/22.Итак, я хочу кое-что заявить об ответе.

Then user was created with a valid Id

Я могу сделать это, создав переменную-член в классе Steps и сохранив там ответ, и я уже использовал этот подход, ноправильный путь?

1 Ответ

1 голос
/ 16 марта 2012

Да.Нужно хранить данные, которые можно использовать в ваших методах @Then.Самый простой способ сделать это - иметь переменную-член - но это означает, что ваш @ When / @ Then должен находиться в одном классе Steps.Другой способ сделать это - иметь общий объект данных, который используют все ваши шаги, и вы можете установить его в одном методе и получить его в другом.Если вы просто хотите что-то общее, вы можете сделать Map<String,? extends Object> в качестве вашего универсального объекта данных.И затем, если вы работаете с несколькими потоками, оберните объект данных в ThreadLocal.

Это то, что я видел - и объект данных должен быть настроен / очищен с помощью метода @ BeforeScenario / @ AfterScenario.

...