두 JUnit Assert 클래스의 차이점
JUnit 프레임워크는 2개입니다.Assert
클래스(분명히 다른 패키지에 포함)와 각각의 메서드는 매우 유사한 것으로 보입니다.왜 그런지 설명해주실 분?
제가 말하는 클래스는, 및 입니다.
(JUnit 3의) 이전 방법은 테스트 클래스를 확장하여 마킹하는 것이었습니다.junit.framework.TestCase
그것은 계승되었다.junit.framework.Assert
Assert 메서드를 이렇게 호출할 수 있게 되었습니다.
JUnit 버전4 이후 프레임워크에서는Annotations
마킹 테스트에 사용합니다.따라서 더 이상 확장하지 않아도 됩니다.TestCase
단, 아사트 메서드는 사용할 수 없습니다.단, 새로운 것을 스태틱하게 Import 할 수 있습니다.Assert
클래스. 그래서 새 클래스의 모든 아사트 메서드는 정적 메서드입니다.따라서 다음과 같이 Import할 수 있습니다.
import static org.junit.Assert.*;
이 스태틱 Import 후에는 프리픽스 없이 이 메서드를 사용할 수 있습니다.
재설계에서는 새로운 패키지로 이행했습니다.org.junit
패키지 명명 규칙을 더 잘 따릅니다.
JUnit 3.X:junit.framework.Assert
쥬니트 4X:org.junit.Assert
특히 주석을 지원하는 JDK5 이상을 실행하는 경우 최신 버전을 선호합니다.
실제로 다음과 같은 기능이 변경되었습니다.org.junit.Assert
두 개짜리 스피커를 사용하면 불평할 것입니다.assertEquals()
와 함께float
또는double
,하는 동안에junit.framework.Assert
자동 박스가 자동으로 실행됩니다.
그들이 리팩터링하고 있는 것은junit.framework
로.org.junit
그리고.junit.framework.Assert
는 하위 호환성을 위해 유지됩니다.
대략적인 소스 코드 비교를 해봤지만 큰 변화는 없습니다.댓글도 많이 달렸고요.org.junit.Assert
리팩터링도 하고유일하게 달라진 것은 와의 비교입니다.Arrays
·코드 청소는 몇 가지 있습니다만, 기능적인 변경은 없습니다.
Android Studio(IntelliJ에서도 마찬가지)에서는 글로벌하게junit.framework
자동 Import 프로포절에서 가져옵니다.
범위를 설정할 수 있습니다.IDE
또는Project
JUnit 3을 사용하는 프로젝트가 없는 경우 IDE 스코프를 안전하게 사용할 수 있습니다.
설정 위치:
프리퍼런스 -> 에디터 -> 일반 -> 자동 Import
언급URL : https://stackoverflow.com/questions/291003/differences-between-2-junit-assert-classes
'sourcecode' 카테고리의 다른 글
Vuex 배열에서 항목 제거 (0) | 2022.08.08 |
---|---|
Vue Vuex: 계산된 속성이 변경되기 전에 오래된 데이터가 일정 기간 유지됩니다. (0) | 2022.08.08 |
Custome vue 부트스트랩 테마가 작동하지 않음 (0) | 2022.08.08 |
오브젝트를 사용합니다.freeze 및 object.freeze는 테이블 데이터 행이 많은 리액티브페이지에서 메모리 증대를 줄이기 위해 사용합니다. (0) | 2022.08.08 |
Vue.use(플러그인)가 'install' 함수를 호출하지 않음 (0) | 2022.08.08 |