Tech/Test Embedded MySQL를 이용해 테스트 환경 구축해보기 2021. 9. 29. 독립적인 테스트 환경을 구축하는 방법으로 Embedded 환경을 사용한다 Embedded 환경을 구축하는 방법으로는 1. H2 데이터베이스 사용 2. Embedded MySQL ( wix mysql ) 3. TestContainer 가 있는데 이번 포스트에서는 Embedded MySQL( wix mysql )을 살펴보려고 합니다 Embedded MySQL 이름 그래도 어플리케이션 내장형 MySQL입니다 오픈 소스로 지원되는 wix-embedded-mysql을 사용하여 구성할 수 있습니다 GitHub 공식 사이트 https://github.com/wix/wix-embedded-mysql GitHub - wix/wix-embedded-mysql: embedded mysql based on https://gi.. JsonPath란? 2021. 9. 6. 소스코드: https://github.com/json-path/JsonPath GitHub - json-path/JsonPath: Java JsonPath implementation Java JsonPath implementation. Contribute to json-path/JsonPath development by creating an account on GitHub. github.com 참고: https://advenoh.tistory.com/28 좋은 블로그 감사합니당... Java Jayway JsonPath 사용법 Gatsby로 블로그 마이그레이션을 하여 이 링크를 클릭하면 해당 포스팅으로 갑니다. 감사합니다. http://blog.advenoh.pe.kr 1. 들어가며 Jayway Json.. JUnit 5 공식 레퍼런스 2021. 8. 25. 사내 스터디 JUnit5(5.7.2 버전 기준) 공식 레퍼런스 분석 페이지 https://junit.org/junit5/docs/current/user-guide/ JUnit 5 User Guide Although the JUnit Jupiter programming model and extension model will not support JUnit 4 features such as Rules and Runners natively, it is not expected that source code maintainers will need to update all of their existing tests, test extensions, and cus junit.org 1. Assumptions JUnit.. Mockito vs BDDMockito 2021. 8. 12. Mockito Mockito란? 복잡하게 얽혀있는 객체들의 의존성 때문에 원하는 비즈니스 로직에 대한 테스트를 작성하기 힘들다 이때 의존성을 가지는 객체들을 가짜 객체를 만들어 테스트할 수 있는데 이런 객체를 Mock 객체라고 한다 Mockito는 이름에서도 알 수 있다시피 관리가 어려운 Mock 객체를 손쉽게 사용하도록 지원해주는 프레임워크이다. 생성 방식 mock method // JUnit 5 import static org.mockito.Mockito.mock; public class MemberServiceTest2 { private MemberRepository memberRepository; private MemberService memberService; @BeforeEach void se.. Jacoco를 이용해 테스트 커버리지 관리해보자 2021. 8. 8. 코드 커버리지 관리의 필요성 테스트 코드를 열심히 작성하고 있었는데 하필 딱! 실수로 테스트 코드가 작성되지 않은 로직에 대한 변경이 발생했고, 이 변경으로 인해 부작용이 발생한다면? 코드 커버리지를 관리하게되면 이러한 불안감을 해소해준다. 코드 커버리지란? 테스트 케이스가 얼마나 충족 되었는지를 나타내는 지표 즉 테스트를 진행하였을 때 코드 자체가 얼마나 실행되었느냐는 내용 커버리지 계산 ( 대표, 구문 커버리지 ) void test(int num) { system.out.println(“a line”); // 1 if (num < 0) { // 2 system.out.println(“b line”); // 3 } system.out.println(“c line”); // 4 } 코드 한 줄이 한 번 .. 이전 1 다음