[트러블슈팅] 로컬에서 성공하는 테스트가 github‐actions 에선 실패 - f-lab-edu/jshop GitHub Wiki

문제

github-actions로 feature 브랜치에 대해 테스트를 진행하고 있다.

push 이벤트 발생시 테스트를 진행하고 있는데 로컬에서는 성공하던 테스트가 github 서버에서 돌릴때는 실패하고 있다.

스크린샷 2024-06-11 12 18 09

트러블슈팅

원인을 파악하기 위해 ./gradlew clean test --info 로 로그를 출력해봤다.

스크린샷 2024-06-11 12 26 13

이유는 jwt 키가 너무 짧아서 생기는 문제였다.

원인

현재 JwtUtil 클래스에서 키값을 application.yml 에서 주입받아 사용하고 있다.

@Value("${spring.jwt.secret:}") String secretKey) {

하지만 보안상 application.yml 을 ignore 했고, JwtUtil에서 사용할 키가 없기 때문에 이러한 문제가 발생한것이다.(아마 키가 짧다고 하는것을 보아 빈문자열로 사용했을것으로 추정)

해결

default 값을 추가해줬다.

@Value("${spring.jwt.secret:defaultkeydefaultkeydefaultkeydefaultkeydefaultkeydefaultkey}") String secretKey) {

문제없이 성공하는 모습이다.