js-test-driver unit-testing 프레임 워크에 대해 읽고 있었는데, 프레임 워크 뒤에있는 사람들 이 어설 션 프레임 워크와 통합 될 것이라는 것을 알게되었습니다 . 어설 션 프레임 워크 란 무엇입니까? 일종의 단위 테스트 프레임 워크입니까? 이 경우 그러한 프레임 워크에 특정한 것은 무엇입니까?
js-test-driver unit-testing 프레임 워크에 대해 읽고 있었는데, 프레임 워크 뒤에있는 사람들 이 어설 션 프레임 워크와 통합 될 것이라는 것을 알게되었습니다 . 어설 션 프레임 워크 란 무엇입니까? 일종의 단위 테스트 프레임 워크입니까? 이 경우 그러한 프레임 워크에 특정한 것은 무엇입니까?
답변:
어설 션 프레임 워크의 예는 것 Hamcrest 그것은 단지 쓰기 주장에 표현 방법을 제공, JUnit을 4 Hamcrest에 통합 된 테스트를 실행하지 않습니다.
이전 JUnit 스타일 평등 주장 :
assertEquals(constant, underTest);
// or for doubles
assertEquals(3.5, underTest, .001); // within 1/1000th
Hamcrest 스타일 평등 주장 :
assertThat(underTest, Is.EqualTo(constant));
// or for doubles
assertThat(underTest, Is.EqualTo(3.5).Within(.001));
기본적으로 어설 션 프레임 워크를 사용하면 쉽게 확장 가능한 방식으로 어설 션을 수행 할 수 있습니다. 어설 션 프레임 워크는 어설 션에만 중점을두기 때문에 테스트를 수집하고 실행해야하는 도구보다 훨씬 효율적으로 작업을 수행 할 수 있습니다. NUnit은 또한 주장에 대한 Hamcrest 접근 방식을 채택했습니다. Hamcrest를 사용하여 테스트를 실행하지 않고 어설 션을 작성합니다.