일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 백준알고리즘
- kotlin
- 공부일지
- 코딩봉사
- 시나공
- python
- 코틀린
- 문제풀이
- 알고리즘
- 소프티어
- 정보처리산업기사
- 백준
- 자바
- 데이터베이스
- MYSQL
- 백준 알고리즘
- SQL
- C++
- programmers
- 회고
- 코딩교육봉사
- java
- 1과목
- 스프링
- 파이썬
- 프로그래머스
- softeer
- BFS
- SW봉사
- CJ UNIT
- Today
- Total
JIE0025
[Postman][1] depth가 0인 카테고리 추가 (컨트롤러 요청메세지 테스트) 본문
아직 API계층의 슬라이스테스트 // 컨트롤러에서 사용하는 Mockito를 잘 모르겠어서
Postman을 이용해 컨트롤러로 요청메세지를 보내는걸로 테스트를 하기로 했다.
나중에 다시 Mockito로 테스트코드를 만들고 글을 작성해야지
설계 단계에서 이렇게 요청할것을 지정해놨기 떄문에 그대로 사용할거다.
//CREATE
POST http:localhost:8080/v1/categories
//READ
GET http:localhost:8080/v1/categories/1
//READ ALL
GET http:localhost:8080/v1/categories
//UPDATE
PATCH http:localhost:8080/v1/categories/1
//DELETE
DELETE http:localhost:8080/v1/categories/1
1️⃣ POST 요청 보내기 //CREATE
depth가 0인 카테고리를 추가하는 테스트이다.
POST http:localhost:8080/v1/categories
//Body
{
"name": "FLAG",
"categoryDepth": 0
}
바로 에러가 나버렸다.
✅ 에러 기록과 해결
javax.servlet.ServletException: No adapter for handler SpringBoot
https://jie0025.tistory.com/326
[error] javax.servlet.ServletException: No adapter for handler SpringBoot
✅ 에러 메세지 javax.servlet.ServletException: No adapter for handler SpringBoot No adapter for handler [com.FlagHome.backend.v1.category.controller.CategoryController@36a848f7]: The DispatcherServlet configuration needs to include a HandlerAdapter t
jie0025.tistory.com
🐜 디버깅
데이터 저장 전엔 전송한 데이터 name과 parent, children모두 null인걸 확인할 수 있었다.

데이터 저장 코드이후id가 1로 설정이 되는것을 체크했다.
근데 ///부모의 자식에 추가// 여기서 NullPointerException이 뜰 예정이라고 뜨길래 널체크하는 코드를 추가했다.
당연한 말이다. 맨위에서 NULL로 초기화를 해줬으니 ㅠㅠ
//부모의 자식에 추가
if(parentCategory != null) {
parentCategory.getChildren().add(category);
}
✔️ 개선 이후 마지막으로 한번 더 테스트

데이터가 잘 들어간걸 확인했다.!

✔️ 이후에 할일
update : 카테고리 이름 수정하기
PATCH http://localhost:8080/1
------ body--------
{
"name":"Activity"
}
create : depth가 1~3 인 카테고리 추가 (부모는 0번부터 내려가는걸로!)
{
"id:0,
"name":"Activity",
"depth":0
"children":[
{
"id": 6,
"name": "Study",
"depth": 1,
"children": [
{
"id": 7,
"name": "알고리즘",
"depth": 2,
"children": [
{
"id": 8,
"name": "개념반",
"depth": 3,
"children": []
}
]
}
]
}
]
}
마지막에 Mockito로 테스트코드를 만들고 글 작성하기
'Application > Test' 카테고리의 다른 글
[Postman][4] Get Categories (컨트롤러 요청메세지 테스트) (0) | 2022.12.19 |
---|---|
[Postman][3] depth가 1~3 인 카테고리 추가 (컨트롤러 요청메세지 테스트) (0) | 2022.12.18 |
[MockMvc] CategoryControllerTest (1) depth가 0인 카테고리 추가 (0) | 2022.12.17 |
[Postman][2] id가 1인 카테고리 수정 (컨트롤러 요청메세지 테스트) (0) | 2022.12.17 |
[JPA] 카테고리 Entity DB 반영 체크 (0) | 2022.12.17 |