전체 카테고리361 코드 커버리지 적용(1) - 커버리지란? 1. 코드 커버리지란? 코드 커버리지는 테스트 케이스가 얼마나 충족되었는지를 나타내는 지표중 하나이다. 테스트를 진행하였을 때 '코드 자체가 얼마나 실행되었느냐'를 수치로 확인할 수 있다. 코드 커버리지는 소스 코드를 기반으로 수행하는 화이트 박스 테스트를 통해 측정한다. 2. 코드 커버리지 측정 기준 코드의 구조는 구문(Statement), 조건(Condition), 결정(Decision)의 구조로 이루어져있고, 이러한 코드의 구조를 얼마나 커버했느냐에 따라 측정 기준이 나뉘게된다. 2.1 구문(Statement) 라인 커버리지라고도 부르며 코드 한줄이 한번 이상 실행된다면 충족된다. x가 -1일 때 테스트 데이터로 사용할 경우 if문의 조건을 통과하지 못하기 때문에 3번 코드는 실행이 되지 않는다. .. 2021. 11. 30. [Spring Boot] Elastic Stack 연동 (ELK 연동) 이번 포스팅에서는 Elastic Stack을 연동하는 방법에 대해서 포스팅하려고한다. 서버에 Elastic Stack을 설치하지 않았다면 여기를 참고하면된다. 1. logstash dependency 추가 (build.gradle) implementation 'net.logstash.logback:logstash-logback-encoder:6.6' 2. logback-spring.xml 파일 추가 logback-spring.xml을 resources 폴더 아래에 추가한다. %-5level %d{HH:mm:ss.SSS} [%thread] %logger{36} - %msg%n %d{yyyy-MM-dd HH:mm:ss.SSS}[%-5level] : %msg%n INFO mylog.txt mylog-%d{yy.. 2021. 11. 28. Elastic Stack(ELK Stack) 설치 이번 포스팅에는 Elastic Stack을 설치하는 방법에 대해서 정리하려고한다. docker,docker-compose가 설치되어 있지 않다면 여기를 참고하면된다. AWS의 EC2에 설치를 진행한다. 아래 과정을 다 완료하고 스프링 부트에 logstash를 연동하고 싶으면 여기를 참고한다. 1. docker-elk 설치 docker를 사용해서 ELK를 구축하려고한다. 깃허브에 편하게 설치할 수 있게 구성되어있는게 있어서 그걸 사용한다. git clone https://github.com/deviantony/docker-elk.git cd docker-elk 2. Elasticsearch 설정 변경 X-pack 플러그인은 Security 관련 부분이다. $ vi elasticsearch/config/el.. 2021. 11. 28. AWS EC2 docker, docker-compose 설치 1. 도커 설치 sudo apt install docker.io// 도커 설치 docker -v// 도커 버전 확인 2. 도커 시작 sudo service docker start 3. 사용자 추가 sudo usermod -aG docker ubuntu 4. docker-compose 설치 $ sudo curl \ > -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" \ > -o /usr/local/bin/docker-compose % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Tot.. 2021. 11. 28. [Spring Boot] API 스프링부트 캐싱 적용 애플리케이션 개발 과정 중 자주 변하지 않는 정보는 캐싱해서 사용하기 위해서 스프링 부트 캐시를 적용해보았다. 만약 데이터가 신규로 추가되거나하면 캐시를 지워주고, 한번 더 select가 일어나게 해주면 된다. Spring Cache를 사용하면 자바 메소드에 캐싱을 적용하여 파라미터 값에 따라서 캐시를 적용한다. implementation group: 'org.springframework.boot', name: 'spring-boot-starter-cache', version: '2.6.0' 1. CacheConfig 작성 (@EnableCaching) import org.springframework.cache.annotation.EnableCaching; import org.springframework.. 2021. 11. 21. [알고리즘] 프로그래머스 - 다음 큰 숫자 1. 문제 2. 나의 풀이 처음에는 직접 binaryNumber를 구하는 메소드와 binary로 변환했을 때 1의 갯수를 구하는 메소드를 짰는데 효율성 테스트에서 실패하였다. 찾아보니까 Integer를 binaryString으로 바꿔주는 메소드와 Integer에서 2진수로 변환했을 때 1의 개수를 반환해주는 메소드가 있었다. 해당 메소드를 사용하니 효율성 테스트를 통과할 수 있었다. binaryString으로 바꾸는 부분의 경우 구현을 살펴보니 비트 단위로 조작하는 부분이 있었다. 이 부분은 좀 더 찾아봐야할꺼 같다. Integer.toBinaryString(n); Integer.bitCount(n); class Solution { public int solution(int n) { int answer .. 2021. 11. 20. 이전 1 2 3 4 5 6 7 ··· 61 다음