Spring 테스트코드 404에러

에러발생

테스트코드 404에러

간단한 테스트 코드를 작성하고 테스트코드를 실행하였는데 아래와 같은
에러가 났다.
테스트코드 404에러

404에러는 테스트 코드의 문제보다는
url쪽 에러라고 해서 먼저 맵핑이 잘안되었나하고 확인했는데 문제 가없었다.

@Test
    ```public void hello가_리턴된다() throws Exception{
        String hello ="hello";
        mvc.perform(get("/test"))
                .andExpect(status().isOk())
                .andExpect(content().string(hello));
  }
}
@GetMapping("/test") 
    public String hello(){
        return "hello";

원인

테스트코드 디렉토리
원인은 ..테스트코드나 맵핑의 문제가아닌 디렉토리주소가 잘못되었다...

FirstwebserviceApplication클래스는 메인클레스여서 @SpringBootApplication 어노테이션을

작성하였는데 이 어노테이션을 작성하면

@SpringBootApplication이 있는 위치부터 설정을 읽어가기 때문에 이 클래스는 항상 프로젝트
최상단에 위치해야 됐다. (그래서 아마 localhost:8080에 접속에도 404에러가 떴을꺼다)

그래서 web 패키지가 com.firstwebservice.firstwebservice 패키지 안에 있어야했었다.



문재해결

테스트코드 디렉토리2

web패키지를 com.firstwebservice.firstwebservice 패키지 안에 넣어주어 에러를 해결했다.



배운점

@SpringBootApplication 의 클래스는 항상 프로젝트의 최상단에 위치해야한다.

에러가났을때 코드에서만 에러를 찾지말고 그외적인것도 고려해 보자

'Prgraming Error' 카테고리의 다른 글

Spring ) java.lang.AssertionError: 에러  (0) 2022.02.09