Я работаю с:Спок и Спок отчеты: Как напечатать переменной ценен в Этикетка/Block
- Спок Ядро
- Спок Отчеты
- Спок Spring
- Spring MVC Testing
и у меня есть следующий код:
def "findAll() Expected"(){
given: "The URL being used is: /personas/xml/personas"
url = PersonaUrlHelper.FINDALL;
when: "When the URL is being calling with a GET"
resultActions = mockMvc.perform(get(url)).andDo(print())
then: "something..."
resultActions.andExpect(status().isOk())
.andExpect(content().contentType(RequestMappingProducesJsonUtf8.PRODUCES_JSON_UTF_8))
}
Два замечания:
Один: соблюдающие given: "The URL being used is: /personas/xml/personas"
где URL/значение URI был добавлен вручную.
: переменная url
определена как переменная экземпляра, поскольку она распространена во многих методах тестирования. Поэтому def String url
Мой вопрос является:
как я могу отобразить переменную url
в Спок «s ярлык/блок? как (данный, тогда ...)? Он будет напечатан через Спока Reports и улучшить мое тестирование документации
Я прочитал следующее: Spocklight: Extra Data Variables for Unroll Description
Он работает около @Unroll. Но я все-таки осознал всю работу вокруг метки/блока where
.
Я уже пытался что-то вроде:
given: "The URL being used is: $url"
given: "The URL being used is: ${url}"
И не работает
Я хочу работать вокруг с синтаксиса аналогично, как в следующем:
def "findAll() Expected"(){
url = PersonaUrlHelper.FINDALL;
given: "The URL being used is: $url"
…. something
when: "When the URL is being calling with a GET"
Так что может быть правильная конфигурация?
Как я использую рефактор для PersonaUrlHelper.FINDALL
, используемый в некотором весеннем @RequestMapping
и в этом методе испытания. Я не хочу вручную обновлять текст в метке/блоке given
Итак, что такое правильный синтаксис?
Я протестировал ваше решение, оно не работает. Во-первых, я получаю сообщение об ошибке «Я не могу объявить' когда »после последнего' then'. И переменная всегда равна нулю. –
Я только что установил опечатку - последний блок должен быть 'где'. - Прости. Я также увижу, могу ли я найти время, чтобы проверить свой ответ сам, чтобы увидеть, есть ли другие проблемы ... следите за обновлениями ... – rdmueller
спасибо !. Есть две проблемы (1) 'where' не могут использоваться после' then'. (2) ваш 'url <<' всегда терпит неудачу из-за * NullPointer ... * и что-то связанное. –