기타

    JaCoCo 적용하여 테스트 커버리지 체크하기

    최근 소마 프로젝트를 진행하면서 jenkins로 빌드하면서 코드정적분석인 sonarqube하고 jacoco로 테스트커버리지를 분석하는 이야기를 멘토링 뿐만아니라 주위에서도 많이 들었다. 그래서 이번 소마프로젝트에서도 jacoco를 통해 테스트커버리지가 60프로이상을 목표로 잡아보고싶다. 이를 계기로 한번 적용해보겠습니다. 1. JaCoCo 플로그인 등록 plugins { id 'jacoco' } 2. jacoco가 만들어지는 경로를 설정 // Report config // 리포트의 저장 경로를 설정합니다. jacocoTestReport { reports { html.enabled true xml.enabled false csv.enabled false html.destination file("jacoco..

    반년동안의 회고

    회고를 해서 지금 나의상태와 잘 해나아가고 있는지 앞으로에 대한 방향성을 한번 잡아보고 싶다. K(Keep) 지속할 것들 - 지금처럼 매일매일 꾸준히 공부하는 습관은 정말 좋은 것 같다. 너무 열심히 몰입하게 되면 슬럼프도 올 수 있고, 하루하루 할 수 있는 만큼 꾸준히 하는 것이 정말 중요한 것 같다. - 목표를 3달 1달 단위롤 잘게잘게 짤라 설정을하고 다시 그 목표에 맞게 나아가게 매주단위로 계획을 세운다. 정말 효과를 많이 본 방식인 것 같다.(장사의 신 유튜브에서 봤는데 정말 효과가 있는듯.. ?) - 대외활동을 통해서 정말 많은 insignt를 얻는 것 같다. 실무에서 어떤 방식으로 진행하는지 사람들의 열정이 확실히 다르다라는 것을 느꼈다. 많은사람들과 소통을 할 수 있는 기회의 장 지금처럼 ..

    Spring boot TDD 및 JaCoCo 테스트 커버리지

    1, Given – When – Then 2, F.I.R.S.T Given – When – Then Given 테스트에 필요한 환경을 설정하는 단계, 필요한 변수, Mock 객체로 특정 상황의 행동 정의 ※ Mock 객체 -테스트 작성을 위해 사용하는 거짓된 객체, 실제 객체가 아님 When 목적을 보여주는 단계, 테스트 코드를 포함하여 테스트하고 결과 값을 가짐 Then 결과를 검증하는 단계, 이 단계에서 결과 값을 검증, 결과 값이 아니어도 테스트를 하여 검증한 것이 있으면 같이 검증 F.I.R.S.T 빠르게(Fast) 테스트는 빠르게 수행돼야 한다. 테스트가 느리면 코드를 개선하는 작업이 느려져 코드 품질이 떨어질 수 있다 테스트 속도에 절대적인 기준은 없지만 목적을 단순하게 설정해서 작성하거나 외..

    유효성검사와 예외처리

    애플리케이션의 비즈니스 로직이 올바르게 동작하려면 데이터를 사전 검증하는 작업이 필요하다. 이것은 유효성 검사 또는 데이터 검증이라한다. 유효성 검사의 예로는 여러 계층에서 들어오는 데이터에 대해 의도한 형식대로 값이 들어오는지 체크하는 과정이 있다. 이 같은 유효성 검사(validation)는 프로그래밍에서 매우 중요한 부분이며, 자바에서 가장 신경 써야 하는 것 중 하나로 NullPointException 예외가 있다. 10.3.3 스프링 부트의 유효성 검사 유효성 검사는 각 계층으로 데이터가 넘어오는 시점에 해당 데이터에 대한 검사를 실시한다. 스프링부트 프로젝트에서는 계층 간 데이터 전송에 대체로 DTO객체를 활용하고 있기 때문에 아래 그림과 같이 유효성 검사를 DTO 객체를 대상으로 수행하는 것..