강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

terecal님의 프로필 이미지
terecal

작성한 질문수

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

주문 리포지토리 개발

주문 레포지터리 테스트에 대해 궁금한게 있습니다.

작성

·

275

0

  1. 주문 레포지터리 테스트를 하려고 하는데

주문 도메인에 protected 로 되어 있다는데 왜 이렇게 되어 있는거죠? 레포지터리를 직접 테스트하면 안된다는 건가요?

 

 

  1. 주문 레푀터리 테스트도 작성하는게 바람직한가요?

 

package jpabook.jpashop.repository;

import jpabook.jpashop.domain.Address;
import jpabook.jpashop.domain.Member;
import jpabook.jpashop.domain.Order;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

import javax.transaction.Transactional;

import static org.junit.jupiter.api.Assertions.*;


@SpringBootTest
class OrderRepositoryTest {

    @Autowired
    OrderRepository orderRepository;

    @DisplayName("테스트 내용 or 주제")
    @Transactional
    @Test
    public void 주문생성테스트(){

        Member member1 = new Member();
        member1.setName("hyun");

        Address address = new Address("byulnae", "bulam", "220");
        member1.setAddress(address);

        Order order = new Order();
        order.setMember();

    }

}

 

 

답변 1

0

안녕하세요. terecal님, 공식 서포터즈 OMG입니다.
.

1.
강의와 다르게 작성한 구현 코드가 있나요?

문제가 발생하는 클래스의 전체코드를 올려주셔야 최소한의 확인이 가능합니다.

메시지를 보면 Order클래스인 것 같습니다. Order 클래스 전체를 올려주세요.

 

  1.  

Order도 핵심 비즈니스로직이므로 Repository도 테스트하면 물론 좋습니다.

강의에서는 Order에 대한 통합테스트로 진행하여 생략하신 것 같습니다. OrderRepository의 단위테스트를 작성하면 더 견고한 애플리케이션이 되겠죠?

 

.
감사합니다.

terecal님의 프로필 이미지
terecal

작성한 질문수

질문하기