Skip to content

Code Tip

ryuhoseong edited this page Dec 23, 2020 · 3 revisions

Springboot

1. Reference
2. Issue


1.1 Restcontroller

  • request 와 reponse 시 parameter 형태를 snake_case 에서 calmel 로 자동변경을 원할 경우 application.properties에 spring.jackson.property-naming-strategy=SNAKE_CASE 추가.

1.2 repository test

  • 실 db 테스트를 원할 경우
    @DataJpaTest
    @AutoConfigureTestDatabase(replace= AutoConfigureTestDatabase.Replace.NONE)
    @Rollback(false)

1.3 test 시 parameter만 다른 동일 method를 호출할때

  • given().willReturn(첫번째결과, 두번째결과)

1.4 return 이 void 인 method 테스트 할때
    @SuppressWarnings("unchecked")
    ArgumentCaptor<T> argumentCaptor = ArgumentCaptor.forClass(T);

    verify(test 객체).메서드명(argumentCaptor.capture());

    argumentCaptor.getValue()

1.5 Test 마다 초기화를 원할 경우

  • Class 에 @DirtiesContext(classMode = DirtiesContext.ClassMode.AFTER_EACH_TEST_METHOD) 추가

1.6 Test 에 순번을 지정하고 싶을 때

  • Class 에 @TestMethodOrder(MethodOrderer.OrderAnnotation.class) 추가
  • Test 에 @Order([번호])

2.1 gradle multimodule

  • implementation project(":[module_name]") 할시 해당 module_name의 dependencies를 사용하기 위해서는 module_name dependencies 에는 implementation 대신 compile을 사용한다.

2.2.1 build 시 Main class name has not been configured and it could not be resolved
2.2.2 package does not exist

  • build.gradle 에 추가

    bootJar.enabled = false
    jar.enabled = true

Clone this wiki locally