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

첫단추님의 프로필 이미지
첫단추

작성한 질문수

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

회원 기능 테스트

회원 중복 예외 테스트 질문 드립니다

작성

·

412

2

회원 중복 테스트 시 아래와 같은 에러가 납니다.
 (expected = IllegalStateException.class)
가 제대로 적용되지 않는 것 같은데 memberService.join 함수도 문제 없는것 같은데 잘 해결되지 않아서 질문 드립니다.
아래는 코드와 에러 첨부입니다.
 
java.lang.Exception: Unexpected exception, expected<java.lang.IllegalStateException> but was<java.lang.AssertionError> at org.junit.internal.runners.statements.ExpectException.evaluate(ExpectException.java:30) at org.springframework.test.context.junit4.statements.RunBeforeTestMethodCallbacks.evaluate(RunBeforeTestMethodCallbacks.java:75) at org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:86) at org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(SpringRepeat.java:84) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:251) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:97) at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329) at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293) at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61) at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70) at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306) at org.junit.runners.ParentRunner.run(ParentRunner.java:413) at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:190) at org.junit.runner.JUnitCore.run(JUnitCore.java:137) at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:69) at com.intellij.rt.junit.IdeaTestRunner$Repeater$1.execute(IdeaTestRunner.java:38) at com.intellij.rt.execution.junit.TestsRepeater.repeat(TestsRepeater.java:11) at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:35) at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:235) at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:54) Caused by: java.lang.AssertionError: 예외가 발생해야 한다. at org.junit.Assert.fail(Assert.java:89) at jpabook.jpashop.service.MemberServiceTest.중복_회원_예외(MemberServiceTest.java:63) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.springframework.test.context.junit4.statements.RunBeforeTestExecutionCallbacks.evaluate(RunBeforeTestExecutionCallbacks.java:74) at org.springframework.test.context.junit4.statements.RunAfterTestExecutionCallbacks.evaluate(RunAfterTestExecutionCallbacks.java:84) at org.junit.internal.runners.statements.ExpectException.evaluate(ExpectException.java:19) ... 23 more
 
 
 

답변 1

1

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

올리신 코드가 테스트에 관련된 코드 중 핵심코드긴 하지만 해당 테스트에서 사용되는 코드 중 극히 일부여서

다른 부분에서 문제가 발생한 것일 수 있지만 우선 눈에 띄는 점은

member2인스턴스 생성 후 setName을 member1로 하셨네요.

수정 후 결과를 공유해주세요

감사합니다.

첫단추님의 프로필 이미지
첫단추
질문자

코드를 몇번이나 봐도 안보였는데 저기있었네요ㅠㅠ

어디서 DB에 안들어가나 했더니 애초에 넣지를 않았었네요 정말 감사합니다!!

학습하시다 잘 안되는 부분 있으면 언제든 질문 남겨주세요 :)

덕분에 오류 찾고 갑니다 ㅠㅠ

어디서 오타가 났지...ㅇ했는데...복붙... 조심...

첫단추님의 프로필 이미지
첫단추

작성한 질문수

질문하기