강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của qkslzl1012160610
qkslzl1012160610

câu hỏi đã được viết

Giới thiệu Spring - Học các kỹ thuật truy cập Spring Boot, Web MVC, DB thông qua code

Viết test case cho repository thành viên

왜 오류가 안날까요?

Viết

·

762

0

영상 11:00부분 부터, 테스트가 끝날 때마다 초기화되는 AfterEach부분을 적지 않았음에도 불구하고 정상실행 됩니다. findByName()이 왜 오류가 안날까요?

스프링이 업그레이드 되면서 자동으로 clear하는 기능이 생겼나 싶어서 찾아보니까 그런내용은 없었는데, 혹시 오류가 안나는 이유를 알 수 있을까요?

package hello.hellospring.repository;
import hello.hellospring.domain.Member;
import org.junit.jupiter.api.Test;
import java.util.List;
import static org.assertj.core.api.Assertions.*;
class MemoryMemberRepositoryTest {
    MemoryMemberRepository repository = new MemoryMemberRepository();

    @Test
    public void save() {
        //given
        Member member = new Member();
        member.setName("spring");
        //when
        repository.save(member);
        //then
        Member result = repository.findById(member.getId()).get();
        assertThat(result).isEqualTo(member);
    }
    @Test
    public void findByName() {
        //given
        Member member1 = new Member();
        member1.setName("spring1");
        repository.save(member1);
        Member member2 = new Member();
        member2.setName("spring2");
        repository.save(member2);
        //when
        Member result = repository.findByName("spring1").get();
        assertThat(result).isEqualTo(member1);
    }
    @Test
    public void findAll() {
        //given
        Member member1 = new Member();
        member1.setName("spring1");
        repository.save(member1);
        Member member2 = new Member();
        member2.setName("spring2");
        repository.save(member2);
        //when
        List<Member> result = repository.findAll();
        //then
        assertThat(result.size()).isEqualTo(2);
    }
}
javaspringmvcspring-boot

Câu trả lời 2

0

대대멍청이도 덕분에 해결했습니다. 혹시 왜 static이 없으면 오류가 안나는지 설명해주실 수 있을 까요?

디버깅을 통해서 확인해보니 findAll() 이후에 findByName() 시에 strore가 비어있었습니다. MemoryMemberRespository 인스턴스는 하나뿐인 것같은데,, 왜 그런가요?

0

qkslzl101216님의 프로필 이미지
qkslzl101216
Người đặt câu hỏi

대 멍청이 질문이었어요.

MemoryMemberRepository 클래스에 Map(store)을 static으로 선언을 안했으니까 당연히 오류가 안났던거에요.

매우 부끄러운 질문이지만 혹시나 헤메실분이 한분이라도 계실까봐 놔두겠습니다...

Hình ảnh hồ sơ của qkslzl1012160610
qkslzl1012160610

câu hỏi đã được viết

Đặt câu hỏi