[Salle] 1. 회원가입 페이지 - INSERT문 성공!

2020. 12. 2. 23:20프로젝트/Salle(살래) 중고거래 웹

728x90

요약

  • 드디어 INSERT문 DB 동작까지 구현완료!
  • 수많은 에러들을 맞닥뜨렸지만 생각보다 단순했다. 어노테이션 수정 또는 클래스명 오류.
  • 테스트는 시도해보되 안되는 걸 끝까지 붙잡지 않았다. carry on 했다. 생산성이 나아졌다.
  • TODO: 로그인 부분 구현하기

진행사항

  • INSERT문 MockMvc를 이용한 Controller 테스트 진행
  • INSERT문 POST로 Binding에 계속 실패하는중(14:54)
  • GetMapping - 클라이언트로부터 요청받은 URI. Controller에서 return하는 파일명은 URI와 일치
  • PostMapping - GetMapping이 완료된 후 사용자가 입력한 값을 받고 다른 곳으로 처리해주는 메서드

이슈

  • RegisterController POST 테스트 실행 시 'Parameter 0 of method sqlSessionFactory in kr.co.salle.salle.SalleApplication required a bean of type 'javax.sql.DataSource' 오류 발생. DataSource 빈이 sqlSessionFactory에 주입되지 않았다고 하는 것 같음.

    • Test Class 어노테이션을 변경하니 해결됨. @WebMvcTest → @SpringBootTest
  • Junit verify 메서드 wanted not invoked, zero interactions 오류발생

    • (참고) Test 클래스 RegisterService는 @Mock으로 설정
    • insertMember 메서드가 실행되지 않았다는 의미. Builder를 써야되나? 여기까지 하고 구현으로 넘어가자
  • POST로 register/done까지 넘어갔을때 insertMember invalid bound exception 오류발생

    • XML id와 Mapper 메서드 이름이 다름
    • Mapper 클래스명을 변경했으나 XML명을 동일하게 변경해주지 않아 발생