Тест Junit приложения SpringBoot не может автоматически подключиться - PullRequest
0 голосов
/ 11 октября 2019

У меня есть класс приложения

  @SpringBootApplication
   public class Application{
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
     }
   }

У меня есть класс контроллера

  @RestController
  public class HelloController {

   @RequestMapping("/")
   public String index() {
    return "Greetings from Spring Boot!";
   }

 }

И я хочу написать тестовый пример для Application Test, чтобы убедиться, что этот экземплярсоздан типа HelloController

     @RunWith(SpringRunner.class)
     @SpringBootTest
     public class ApplicationTest{
        @Autowired
        private HelloController helloController;

       @Test
        public void test(){
          assertNotNull(helloController);
         }
       }

Но я получаю сообщение об ошибке при автоматическом подключении переменной hellocontroller (бины типа helloController не найдены). Насколько я понимаю, @SpringBootTest должен создать контекст и вернуть экземпляр. Нам не нужно писать какой-либо контекстный xml или использовать любой класс AnnotationConfig для получения экземпляра. Чего не хватает?

Ответы [ 2 ]

0 голосов
/ 11 октября 2019

Добавление имени класса в @SpringBootTest (Classes = {HelloController.class}) решило проблему.

0 голосов
/ 11 октября 2019

Извините, предыдущий код, который я разместил, неверен. поэтому удалил его

это кажется более уместным Тестирование контроллера с автоматически подключенным компонентом является нулевым при вызове контроллера из тестового примера

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...