-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
주문 통합테스트 구현 #23
주문 통합테스트 구현 #23
Conversation
fc5f18c
to
75b966a
Compare
49df33c
to
f79a989
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
고생하셨습니다! 수정한번 부탁드립니다!
actions.andExpect(status().isOk()) | ||
.andExpect(jsonPath("$.message").value("주문이 정상적으로 취소되었습니다.")) | ||
|
||
// 데이터베이스에서 주문 상태 조회하여 검증 | ||
val savedOrder: Order? = orderRepository.findByIdOrNull(order.orderId) | ||
assertNotNull(savedOrder) | ||
assertEquals(Status.CANCELED, savedOrder.status) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
then 부분에는 기대하는 결과값에 대해서만 작성을 해두면 좋겠습니다!
|
||
// 데이터베이스에서 주문 상태 조회하여 검증 | ||
val savedOrder: Order? = orderRepository.findByIdOrNull(order.orderId) | ||
assertNotNull(savedOrder) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
null 체크를 하는 부분보다 객체에서 확인하고싶은 부분을 보시는게 좋습니다!
actions.andExpect(status().isOk()) | ||
.andExpect(jsonPath("$.message").value("주문이 정상적으로 출고처리되었습니다.")) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
기대하는 부분은 아래로 내려주세요!
// 데이터베이스에서 주문 상태 조회하여 검증 | ||
val savedOrder: Order? = orderRepository.findByIdOrNull(order.orderId) | ||
assertNotNull(savedOrder) | ||
assertEquals(Status.PROCESSING, savedOrder.status) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
각 단계별로 확실하게 확인하고 싶은 부분을 작성하신 부분은 좋습니다!
//then | ||
actions | ||
.andExpect(status().isOk) | ||
.andExpect(jsonPath("$.orderId").value(orderId)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
조회의 특성을 살려 어떤 값을 조회했는지 예상한 값이 조회되었는지도 같이 작성되면 좋겠습니다.
@DisplayName("전체 주문 조회 offset 페이징 통합테스트") | ||
@Test | ||
fun testGetAllOrderOffsetPaging() { | ||
//given | ||
//필요한 데이터 생성(여러 주문 추가) | ||
createOrders(110) | ||
|
||
//when | ||
val actions: ResultActions = mockMvc.perform( | ||
MockMvcRequestBuilders.get(ORDER_URL + "/offset") | ||
.contentType(MediaType.APPLICATION_JSON) | ||
) | ||
|
||
//then | ||
actions.andExpect(status().isOk()) | ||
.andExpect(jsonPath("$.content.length()").value(10)) | ||
} | ||
|
||
@DisplayName("전체 주문 조회 slice 페이징 통합테스트") | ||
@Test | ||
fun testGetAllOrderSlicePaging() { | ||
//given | ||
//필요한 데이터 생성(여러 주문 추가) | ||
createOrders(110) | ||
|
||
//when | ||
val actions: ResultActions = mockMvc.perform( | ||
MockMvcRequestBuilders.get(ORDER_URL + "/slice") | ||
.contentType(MediaType.APPLICATION_JSON) | ||
) | ||
|
||
//then | ||
actions.andExpect(status().isOk()) | ||
.andExpect(jsonPath("$.content.length()").value(10)) | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
offset slice 부분이 나타나도록 코드를 다시 작성해보세요!
// 데이터베이스에서 주문 조회하여 삭제 여부 검증 | ||
val savedOrder: Order? = orderRepository.findByIdOrNull(order.orderId) | ||
assertNotNull(savedOrder) | ||
assertNotNull(savedOrder.deletedAt) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
시간값을 비교하는 부분이 추가되면 좋겠습니다!
- then 부분에는 기대하는 결과값에 대해서만 작성 - offset과 slice의 특징이 나타나도록 테스트 검증 (findAllByOrderByOrderIdDesc() 메서드 추가) - 주문 삭제에서 시간값을 비교하는 부분 추가
통합 테스트를 구현하였습니다.
OrderSeller
OrderUser