nestJS

·Web
시작 하며...API 서버에서 권한 관리는 매우 중요하다.특히나 요구사항이 복잡해지고 서비스가 커질수록 사용자의 Role은 더욱 세분화되고 그에 따라 권한 역시 상세하게 세분화 된다. (최근에 지인이 개발중인 프로덕트에는 권한의 종류가 100종류가 넘는다고 한다...)NestJS Guards는 NestJS의 Request Lifecycle에 속하는 레이어중 하나이다. 인증, 인가와 같이 권한에 따른 특정 API 요청의 승인 혹은 거절을 담당하기 위해 사용될 수 있다. 본 게시글에서는 "이러한 Guards가 무엇인가?" 는 다루지 않고, 단순히 개발 도중에 Nest JS의 Execution Context와 Guards를 활용한 사례에 대해서 기록하는 목적임을 미리 알려 드립니다. 혹여나 Guards가 뭔지..
·Web
시작 하며...테스트는 프로덕션 레벨에서 특정 로직이 의도한대로 돌아가는가? 를 검증할 수 있어야 한다. 이에 따라 테스트 환경을 어떻게 세팅하는지는 단단한 애플리케이션을 설계하기 위해서 반드시 필요한 과제이다. 간단하게 테스트 환경을 구축하려면, sqlite나 H2와 같은 경량 RDB들을 활용할 수 있다. 그런데, 앞서 언급했던 이런 환경은 실제 프로덕션레벨과 다른 환경이기에 경량 DB가 지원하지 않는 기능들이나 실제 DB와 다르게 동작하는 부분들에 대해서는 테스트 안정성을 보장받기 힘들다. Testcontainers는 테스트시 테스트 전용 가상 DB 환경을 세팅하기 위한 도커 컨테이너를 간편하게 생성하고, 활용할 수 있도록 해주는 도구이다. 본 포스팅에서는 Testcontainers를 활용해서 Nes..
공룡 똥
'nestJS' 태그의 글 목록