Конфигурация теста на модуль IntelliJ для огурца сбой с: «переменная RestClient не инициализирована в ошибке конструкторJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Конфигурация теста на модуль IntelliJ для огурца сбой с: «переменная RestClient не инициализирована в ошибке конструктор

Сообщение Anonymous »

Проблема

Я сталкиваюсь с следующей ошибкой при запуске моего проекта в качестве конфигурации модульного теста в Intellij:

Код: Выделить всё

/Users/francislainycampos/IdeaProjects/so-be-automation/src/test/java/com/francislainy/sobeautomation/steps/MySteps.java:14:30
java: variable restClient not initialized in the default constructor
Тем не менее, те же тесты работают нормально, когда я запускаю MVN Test из терминала.

my setup

restClient.java

Код: Выделить всё

@Slf4j
@Component
@AllArgsConstructor
public class RestClient {
public RequestSpecification getRequestSpecification() {
// Rest Assured config here
}
}
cucumberspringconfiguration.java>

Код: Выделить всё

@CucumberContextConfiguration
@SpringBootTest(classes = TestConfig.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
public class CucumberSpringConfiguration {}
testconfig.java

Код: Выделить всё

@ComponentScan(basePackages = {"com.francislainy.sobeautomation"})
@EnableAutoConfiguration
public class TestConfig {}
mysteps.java>

Код: Выделить всё

@RequiredArgsConstructor
public class MySteps {
private final RestClient restClient;
private Response response;

@Given("I send a GET request to the Bored API")
public void iSendAGETRequestToTheBoredAPI() {
response = restClient.getRequestSpecification().get("https://www.boredapi.com/api/activity");
}
}
pom.xml (соответствующие зависимости)

Код: Выделить всё


org.projectlombok
lombok
provided


io.cucumber
cucumber-spring
test


org.springframework.boot
spring-boot-starter-test
test


< /code>
[h4] что я попробовал < /h4>
[list]
[*] [b] Проверенная обработка аннотаций Lombok < /strong>: обработка аннотаций < - это < Стронг> включен [/b] в IntelliJ (Settings > Build, Execution, Deployment > Compiler > Annotation Processors
).
[*] вручную добавил конструктор : если я явно определяю конструктор на mysteps.java , проблема решается: < /li>
изменил область прицела для зависимости Lombok для компиляции или оставить его в качестве не указанного прицела по умолчанию.
[*] пробовал разные версии , как с Lombok 1.18.30, так и последним 1.18.36.
[/list]
Однако единственный обходной путь я обнаружил, что до сих пор значит удалить @RequiredArgsannotation и явно определить конструктор для моей переменной. ">

Код: Выделить всё

public class MySteps {
private final RestClient restClient;
private Response response;

public MySteps(RestClient restClient) {
this.restClient = restClient;
}
}
Вопрос [/h4]
Почему @requiredargsconstructor не может инициализировать RestClient при запуске тестов в Unit Test Intellij Конфигурация , но хорошо работает с MVN Test ? Есть ли способ обеспечить, чтобы сгенерированный Ломбоком конструктор работает правильно в обоих сценариях? /65uwtdub.png "/>

https://github.com/francislainy/so-be-automation
Спасибо.

Подробнее здесь: https://stackoverflow.com/questions/794 ... stclient-n
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»