크리에이티브 커먼즈 라이선스
Creative Commons License
is(6) 메소드에서 오류가 나는 이유를 몰랐다!

package springbook.learningtest.jdk;

import org.junit.Test;
import static org.junit.Assert.*;
import static org.hamcrest.CoreMatchers.*;


public class ReflectionTest {
	@Test
	public void invokeMethod() throws Exception {
		String name = "Spring";
		
		//length()
		assertThat(name.length(), is(6));
		
	}
}


이클립스 환경을 보면, 
에서 보는 것처럼 hamcrest 가 추가되어 있는데 말이다. ㅡ_-);; 저걸로 부족했던건가?

그래서 인터넷을 뒤지다보니 
두 개의 글을 보고서 무언가가 빠졌다는 것을 느꼈다. 그래서 급히 인터넷을 검색
구글 검색 : hamcrest library eclipse
hamcrest 위키를 발견했다. 
그곳에서 hamcrest-all-1.2.jar  받아서 java lib/ext에 추가했다.
그리고 이클립스를 재가동 한 후에
import static org.hamcrest.CoreMatchers.*;
을 추가하고 나니 별 이상없이 정상적으로 수행된다.

Junit(4.8) 에 기본포함되어 있는 hamcrest core 에 존재하는 Matcher 클래스와는 다른 별도의 패키지에 is(int) 형 메소드가 존재하는 것으로 보인다!? 맞나?
이건 어디까지나 나의 섯부른 추측일 뿐이다. ㅡ_-);

저작자 표시
신고
  1. 클레이 2011.07.18 15:22 신고

    우왕 저랑 같은걸로 고민하고계시네요 감사합니당

  2. 들개 2013.04.03 01:21 신고

    좋은 정보 감사합니다. :)

  3. Soonhyun Park 2013.10.20 23:06 신고

    검색하다보면 형의 블러그에 종종 접속이 되네요ㅎ

  4. ..
    그냥 'import static org.hamcrest.CoreMatcher.*;`
    을 추가해주면 됩니다. ^^;;

    이클립스로 'JUnit Test case'를 만들면 거기에는 'Corematcher'가 빠져있거든요.
    말그대로 암것도 모르는 섯부른 추측이었습니다.

    그래서 이클립스 설정preference 에서
    Java -> Editor -> Template 항목에서 지정된 import 를 넣어주는 기능을 추가하면 됩니다.

    http://kwonnam.pe.kr/wiki/java/junit/staticimports
    을 보세요.

  5. hamcrest 2017.05.26 06:00 신고

    감사합니다.. 왜그런지 찾았어요

+ Recent posts