
로컬 환경과 CI 환경의 시간 정밀도 차이로 인한 테스트 실패 해결
·
서버
들어가며안녕하세요! 요즘 플러피(Fluffy)라는 온라인 시험 제작 및 관리 서비스를 개발하고 있습니다. 플러피에서 사용자는 하나의 시험을 여러 번 응시할 수 있고, 마지막 제출 시간을 기준으로 정렬된 제출 목록을 볼 수 있습니다. 이 기능이 정확하게 동작하는지 확인하기 위해 제출 시간과 마지막 제출 시간이 같은지 비교하는 테스트를 작성했습니다. 로컬 환경(MacOS)에서는 테스트가 잘 통과했지만, CI 환경(Ubuntu)에서는 테스트가 실패하는 문제가 발생했습니다. 이 문제를 해결하는 과정에서 다음과 같은 사실을 알게 되었습니다.운영체제마다 System Clock의 해상도가 다르기 때문에 LocalDateTime.now()의 정밀도가 달라질 수 있다.PostgreSQL에서는 마이크로초까지 지원하기 때..