Jmeter를 이용해 부하 테스트를 할 예정이였지만 siginup부터 막혀 서버 부하 테스트가 진행이 안되었다. 아직 회원가입도 안했기에 403에러가 뜨는건 도저히 이해가 안가는 오류였다.
혹여나 스프링 시큐리티에 오류가 있는듯 해서 권한을 살펴봐도 이미 permitAll이기에 권한 가져오는것에 대해서는 문제가 없었다.
허나 포스트맨에서는 200 리스폰스가 뜨면서 서버 응답에는 잘 되고 있었다는 사실;;
그렇게 몇 시간동안 삽질하다가 우연하게 터미널을 통해 서버 응답에 대해 확인이 가능하여 확인해 보았다.
curl -v http://localhost:8080/api/test
curl를 사용하여 서버의 응답을 확인이 가능하다.
무엇이 문제였는가?
위 curl 출력 결과를 보면, 서버가 403 Forbidden 오류를 반환하면서 인증이 필요한 상태임을 알 수 있다. 특히, 응답에 JSESSIONID와 X-Jenkins 헤더가 포함된 것으로 보아, 이 서버는 Jenkins로 실행된 서버일 가능성이 높다고 판단 되었다.
그래서 Jenkins에서 권한을 풀어주거나 권한을 받는 방법을 찾아보았다.
내 정보 -> 설정에서 받은 토큰값을 http header manager에 넣어 권한을 주는 방식으로 해봤지만 fail
안전한 방식은 아니지만 Authorization -> none으로 권한을 열어두어 접근이 가능하게 해봤지만 fail
다만 해당 오류에서 봤듯 Jenkins에서도 8080포트를 사용하고 있었다. 그래서 yml을 통해 포트 번호를 변경하였다.
포트 번호를 바꾼결과 200 응답을 받았다. Jenkins 서버를 실행하고 있지 않은데 불구하고 포트 번호가 겹쳐서 403에러가 뜬건 생각도 못하였다. trace 써가면서 에러에 대한 답을 찾아내려 했지만 결과는 터미널에...
'Jmeter' 카테고리의 다른 글
동시성 테스트를 위한 Jmeter 사용법 (3) | 2024.10.18 |
---|