junit5
-
[Java] LocalDate Unsupported field: HourOfDayprogramming/JAVA 2022. 6. 6. 00:26
LocalDate.format을 이용해서 날짜를 표현할 때 발생하는 에러다. @Test void localDateTest1(){ DateTimeFormatter yyyyMMddHHmmss = DateTimeFormatter.ofPattern("yyyyMMddHHmmss"); LocalDate localDate = LocalDate.of(2022,06,06); localDate.format(yyyyMMddHHmmss); } 위 코드를 실행시켜보면 아래와 같이 에러가 발생한다. 해당 에러는 LocalDate에서 시간을 표현하는 포맷을 사용해서 발생한 에러다. format을 "yyyyMMdd" 형식으로 바꾸던지, LocalDateTime을 사용하면 에러는 발생하지 않는다. @Test @DisplayName("..
-
[Java] Arrays.asList(int[]) 의 잘못된 사용programming/JAVA 2022. 3. 27. 20:59
Arrays.asList() 는 배열을 List로 바꿔주는 것으로 알고 있었다. 그래서 아래와 같은 코드를 의심 없이 작성하였다. (코드를 작성할 때 의도한 것은 2,4를 배열에 넣고, 3,4가 해당 배열에 있는지, 없는지 확인하는 코드이다.) int[] int_numbers = {2,4}; Integer[] integer_numbers = {2,4}; @DisplayName("List.contains 테스트") @Test void listContainsTest(){ assertAll( ()->assertFalse(Arrays.asList(int_numbers).contains(3) , "int_numbers contains 3"), ()->assertTrue(Arrays.asList(int_number..
-
[Java] 테스트메소드에 이름 붙이기programming/JAVA 2021. 11. 24. 00:12
테스트 코드 작성 중 메소드 이름은 영어로 적고 보여주는 이름만 따로 붙이고 싶을 때, @DisplayName 어노테이션을 사용해서 해결할 수 있다. @DisplayName이 없을 때 아래와 같은 코드를 실행하면 @Test void two_Plus_One(){ int num1 = 2; int num2 = 1; int result = num1 + num2; int expected = 3; assertEquals(expected, result); } 인텔리제이에선 아래 스크린샷처럼 보인다. @DisplayName을 작성했을 때 위의 코드에서 @DisplayName 어노테이션만 추가로 작성했다. @Test @DisplayName("2 + 1 = 3일 것인가?") void two_Plus_One(){ int n..