Assertions와 같이 동일한 이름이 있는 겨우
415
작성한 질문수 1
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (아니오)
[질문 내용]
//실행 되는 부분
import static org.assertj.core.api.Assertions.*;
import static org.junit.jupiter.api.Assertions.*;
//안되는 부분
답변 2
0
질문이 좀 정확하지 않았던 것 같아서 다시 질문 드립니다.
import static org.assertj.core.api.Assertions.*;
import static org.junit.jupiter.api.Assertions.*;
위와 같이 선언할 경우 core.api.Assertions의 메소드인 assertThat, jupiter.api.Assertions의 assertThrow를 정적 멤버 호출을 통해
assertThat(~~);
assertThrow(~~);
와 같은 형식으로 사용했는데,
위의 코드와 같이 선언 했을 경우, 아래 사진과 같이 core.api만 import 되어서
Assertions.assertThat만 사용이 가능하고 jupiter.api.Assertions는 import되지 않아서 Assertions.assertThrow가 사용 불가 합니다. 이렇게 되는 이유나 해결 방법이 궁금합니다.
0
아래와 같이 서로 다른 패키지 경로에서 동일한 클래스를 import하는 경우 아래와 같이 import 오류가 발생한다고 보시면 되며,
또한 assertThat과 assertThrows는 동일한 메서드명이 아니여서 자바 컴파일러가 명확한 패키지를 구분할 수 있어 오류 static import에서 문제가 발생한 것이 아닙니다.
0
안녕하세요. 정의양님, 공식 서포터즈 OMG입니다.
네, 정적 멤버호출 코드 사용을 없애려면 static import를 반드시 사용해야합니다.
아래 설명을 참고해주세요
https://velog.io/@kasania/Java-Static-import%EC%97%90-%EB%8C%80%ED%95%9C-%EA%B4%80%EC%B0%B0
감사합니다.
DataSourceUtils.releaseConnection 할때요 SQLException e 사용하는 이유등
0
20
1
수업자료 오타
0
17
1
HelloSpringApplication.java 클래스 실행 오류
0
55
1
스프링 빈 등록 방법 2가지 다 알아야하는 이유
0
76
1
스프링 부트 버전 질문
0
174
2
인텔리제이 오류
0
141
1
..
0
181
2
Unused property.....
0
183
2
project JDK is misconfigured
0
254
2
외부 API의 ID 타입(String/UUID)과 내부 도메인의 ID 타입(Long)이 불일치할 때의 설계 정석
0
138
2
단위/통합 테스트 버전충돌 문제
0
154
2
❗️springboot 4.0.2 버전 aspectj dependency 설정❗️
0
321
1
왜 컨트롤러는 변한게 없는데 새로 만든 html 파일이 뜨나요?
0
168
2
윈도우 build test오류 질문
1
193
2
테스트 관련 공부에 대한 조언을 얻고 싶습니다
0
165
2
테스트 실행 시 에러 질문
0
423
1
name을 통한 비교와 객체를 통한 비교
0
116
1
빌드 후 libs 없음
1
205
1
윈도우 gradlew.bat 에러
0
256
1
@PostMapping("/members/new")가 동작하지 않습니다
0
131
1
java static class와 kotlin class
0
127
1
스프링 DB연결
0
190
1
소요 시간
0
126
2
ddl.sql에 빨간 밑줄
1
154
2





