Способы создания пикоконтейнера DI с гарантированным запросом и ответом REST - PullRequest
0 голосов
/ 23 января 2019

Я создаю тест FW с пикоконтейнером DI с использованием огурца Java.Мне нужно поделиться запросом и ответом, используя DI, но REST гарантированно предоставляет RequestSpecification и Response, которые являются интерфейсами, и интерфейсы не могут быть общими.Что такое класс REST с гарантированным интерфейсом, который позволит мне создать запрос и ответ, выдать HTTP-запрос и прочитать данные запроса и ответа в других классах.По сути, мне нужен способ создания объекта Java с гарантированным запросом и ответом.

1 Ответ

0 голосов
/ 26 января 2019

Контекст внедрения зависимости в cucumber-jvm охватывает выполнение сценария. Таким образом, он может содержать только объекты, которые могут быть созданы без какой-либо информации из сценария.

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

 class MyStepDefs {

     SomeService service;

     @Given("a request")  
     void given_a_request(){
        service.createRequest();
     }
  }

 class OtherStepDefs {

     SomeService service;

     @When("a thing")  
     void a_thing(){
        service.doThing();
     }
  }

 class YetOtherStepDefs {

     SomeService service;

     @Then("it happens")  
     void a_thing(){
        service.asserItHappend();
     }
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...