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

꽁손님의 프로필 이미지
꽁손

작성한 질문수

스프링과 JPA 기반 웹 애플리케이션 개발

회원 가입 리팩토링 및 테스트

이 에러는 무엇인가요?

작성

·

1.7K

1

java.lang.AssertionError: Range for response status value 200 expected: but was:

Expected :REDIRECTION

Actual   :SUCCESSFUL

.andExpect(status().is3xxRedirection())

를 주석처리하고 다시 실행해보니,

java.lang.AssertionError: View name expected: but was:<account/sign-up>

Expected :redirect:/

Actual   :account/sign-up

이 에러는 왜 그런건가요?

조건에 맞게 정상적으로 닉네임,이메일,패스워드 입력을 했는데.. 왜 그런가요?

---

200(성공): 서버가 요청을 제대로 처리했다...그리고

succesful 됫다는데.. 그럼 오류가 아닌것인가요?

참고로 테스트가 아닌 App로 실행해서 똑같이 값(닉네임,이메일,패스워드)를 입력하면 redirect:/ return이 되어

index.html home으로 가게됩니다.. 근데 테스트에서 저런에러가 ㅠㅠ 검색해도 안나오네요

답변 6

2

백기선님의 프로필 이미지
백기선
지식공유자

오류가 맞죠.. 기대했던 값(redirect:/)이랑 실제 값(account/sign-up)이 다르다는거자나요. 리다이렉션이 발생하지 않는 원인은 테스트 코드에서 찾아보셔야겠네요. 실제 애플리케이션 실행했을 떄는 리다이렉트가 됐다고 하시니까 테스트 코드에 문제가 있을겁니다. 해당 테스트 코드 실행시 디버깅을 해서 왜 리다이렉트 하는 코드로 가지고 않고 sign-up 뷰를 리턴하는지 찾아내면 될거 같습니다.

1

꽁손님의 프로필 이미지
꽁손
질문자

아 질문드린 제가 부끄럽네요 ;; 죄송합니다 ㅠㅠ 해결했네요 몇백번 반성합니다;;

0

백기선님의 프로필 이미지
백기선
지식공유자

살펴봤는데요. 너무 기본적인 실수인데다가 디버깅 하면 쉽게 찾아낼 수 있는거라 제가 알려드리지 않겠습니다. 꼭 스스로 해결하셨으면 좋겠네요.

0

꽁손님의 프로필 이미지
꽁손
질문자

죄송합니다 public으로 변경하였습니다. 번거롭게 죄송합니다. 감사합니다.

0

백기선님의 프로필 이미지
백기선
지식공유자

해당 저장소에 접근이 되질 않는데 혹시 private 저장소인가요?

0

꽁손님의 프로필 이미지
꽁손
질문자

항상 감사합니다. 디버깅을 하면서 보는데 아예 실험삼아

account/gggg.html을 하나 만들어 놓고 .andExpect(view().name("account/gggg)

로 실행해보았으나 안되고, 

java.lang.AssertionError: View name expected:<account/gggg> but was:<account/sign-up>

Expected :account/gggg

Actual   :account/sign-up

의 에러가 발생합니다..

 .andExpect(view().name("account/sign-up") 이렇게 사용하면 에러가 발생하지않습니다.

정말 죄송한데 

https://github.com/ansrhks3134/studyG.git 혹시 확인가능할까요? 브런치 version2입니다.. ㅠㅠ

꽁손님의 프로필 이미지
꽁손

작성한 질문수

질문하기