%ED%85%8C%EC%8A%A4%ED%8A%B8

2021-08-13
요즘은 프론트엔드, 백엔드 등으로 개발이 분업화 되었고 또한 최근 많은 곳에서 마이크로서비스 아키텍처 Microservice Architecture 를 도입하면서 하나의 언어가 아닌 여러 언어로 개발하는 것이 추세인 듯하다. 여러 언어로 개발하다 보면 테스트 커버리지와 코드 코드 정적 분석 Static program analysis 결과를 각각 보면 매우 불편한데 통합하여 한곳에서 볼 수 있으면 편할 것 이다. SonarSouce 에서 만든 SonarQube 는 코드를 분석하여 중복, 테스트 커버리지, 코드 복잡도, 버그, 보안 취약성 등을 보여주는 도구이다. 특히...
2019-05-20
데이터베이스 테이블에 CRUD CreateReadUpdateDelete 를 제공하는 간단한 REST API를 구현한다고 생각해 보자. 테스트 코드는 어떻게 작성할 수 있을까? 먼저 목 객체 MockObject 이나 스텁 Stub 같은 테스트 대역 Test Double 을 사용하여 단위 테스트를 작성할 수 있을 것이다. 그리고  더 많은 동작에 대한 확신을 얻기 위해서 테스트 대역을 사용하지 않고 테스트하기를 원할 수 있다. 흔히 통합 테스트라고 말하는데 이런 테스트를 작성하다 보면 테스트 데이터베이스와 테스트 데이터가 필요하다. 이 글은 테스트 픽스처...
2019-04-29
아주 작은 독립적인 기능을 수행하는 여러개의 마이크로 서비스 묶어서 하나의 비즈니스 기능을 구현하는 방식을 마이크로 서비스 아키텍처라고 합니다. 시스템을 이렇게 구성하는 이유는 작은 단위로 구성함으로써 각 서비스별로 독립적인 개발, 배포를 진행할 수 있어 병렬 개발, 각 서비스의 특징에 맞는 개발 언어, DB 사용 등을 할 수 있으며 운영 중에도 각 서비스별로 배포, 확장, 축소 등을 자유롭게 할 수 있는 등의 장점이 있기 때문입니다. 장점이 있으면 당연히 단점도 있겠죠. 주요 단점으로는...
2018-01-24
요즘은 굳이 MSA Microservices Architecture 가 아니더라도 프론트엔드 Front-end 와 백엔드 Back-end 를  구분하여 프론트 엔드는 Anguler나 React로 개발하고 백엔드는 프론트엔드에서 사용할 API를 제공하는 것을 흔히 찾아 볼 수 있다. 이때 부딪치게 되는 문제가 CORS Cross Origin Resource Sharing 이다. CORS 개념에 대한 자세한 설명은 김형준 님의 글(CORS, Preflight, 인증 처리 관련 삽질) 에 잘 나와 있다. 프론트엔드에서 API 호출 시 CORS 문제가 생기지 않도록 API 서버 개발자는 CORS 관련 설정을 해주어야 한다. API 서버 개발자는 CORS 설정이 제대로 되었는지 어떻게 확인할 수 있을까? 가능하면 실제 운영하는 서버에 코드를 배포하기 전에 개발자 자신의 로컬 환경에서.....
더보기