Проблем с нахождение сценарием cucumber при написании компонентных тестов

Вообщем то есть проблема при определении сценариев кукумбер фрайемворка , а именно когда я описываю сценарий и пишу его как бы реализию через @Given @When @Then Во время выполнения теста не получается найти реализацию

Вот код

package com.example.passengerservice.component;

import com.example.passengerservice.dto.response.PassengerResponse;
import com.example.passengerservice.mapper.PassengerMapper;
import com.example.passengerservice.model.Passenger;
import com.example.passengerservice.repository.PassengerRepository;
import com.example.passengerservice.service.impl.PassengerServiceImpl;
import io.cucumber.java.en.Given;
import io.cucumber.java.en.Then;
import io.cucumber.java.en.When;
import io.cucumber.spring.CucumberContextConfiguration;
import org.mockito.InjectMocks;
import org.mockito.Mock;

import java.util.Optional;

import static com.example.passengerservice.util.PassengerTestUtil.getPassenger;
import static com.example.passengerservice.util.PassengerTestUtil.getPassengerResponse;
import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.doReturn;

@CucumberContextConfiguration
public class PassengerComponentTest {
    @Mock
    private PassengerRepository passengerRepository;
    @Mock
    private PassengerMapper passengerMapper;
    @InjectMocks
    private PassengerServiceImpl passengerService;


    private PassengerResponse passengerResponse;
    private Exception exception;

    @Given("A passenger with id {long} exist")
    public void PassengerWithIdExist(long id) {
        PassengerResponse expected = getPassengerResponse();
        Passenger retrievedPassenger = getPassenger();

        doReturn(Optional.of(retrievedPassenger))
                .when(passengerRepository)
                .findById(id);
        doReturn(expected)
                .when(passengerMapper)
                .fromEntityToResponse(retrievedPassenger);
        doReturn(true)
                .when(passengerRepository)
                .existsById(id);

        Optional<Passenger> passenger = passengerRepository.findById(id);
        assertTrue(passenger.isPresent());
    }
    @When("The id {long} is passed to the findById method")
    public void the_id_is_passed_to_the_find_by_id_method(long id) {
        passengerResponse = passengerService.getPassengerById(id);
    }

    @Then("The response should contain passenger with id {long}")
    public void theResponseShouldContainPassengerWithId(long id) {
        Passenger passenger = passengerRepository.findById(id).get();
        PassengerResponse expected = passengerMapper.fromEntityToResponse(passenger);

        assertThat(passengerResponse).isEqualTo(expected);
    }


}

package com.example.passengerservice.component;

import io.cucumber.junit.Cucumber;
import io.cucumber.junit.CucumberOptions;
import org.junit.runner.RunWith;

@RunWith(Cucumber.class)
@CucumberOptions(
        features = "classpath:features"
)
public class CucumberComponentTest {
}

passenger.feature

Feature: Driver Service
  Scenario: Retrieving a passenger by existing id
    Given A passenger with id 1 exist
    When The id 1 is passed to the findById method
    Then The response should contain passenger with id 1

Вот ошибка

Step undefined
You can implement this step using the snippet(s) below:

@When("The id {int} is passed to the findById method")
public void the_id_is_passed_to_the_find_by_id_method(Integer int1) {
    // Write code here that turns the phrase above into concrete actions
    throw new io.cucumber.java.PendingException();
}

Вот стурктура проекта Структура## Заголовок ##


Ответы (0 шт):