2013-02-12 6 views
0

여기 내 코드

import org.junit.Test; 

import static org.junit.Assert.assertThat; 
import static sun.nio.cs.Surrogate.is; 

public class PlayerTest { 
    public void should_return_3_when_status_is_3(){ 
     Player player = new Player(); 
     assertThat(player.getStatus(),is(3)); 
    } 
} 

입니다 그리고 여기에 추적입니다 assertThat 내가 전에 그것을 사용 생각

Can't find symbol 
符号: method assertThat(int,boolean) 
位置: class PlayerTest 

내 IML 파일이

<?xml version="1.0" encoding="UTF-8"?> 
<module type="JAVA_MODULE" version="4"> 
    <component name="NewModuleRootManager" inherit-compiler-output="true"> 
    <exclude-output /> 
    <content url="file://$MODULE_DIR$"> 
     <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" /> 
     <sourceFolder url="file://$MODULE_DIR$/test" isTestSource="true" /> 
    </content> 
    <orderEntry type="inheritedJdk" /> 
    <orderEntry type="sourceFolder" forTests="false" /> 
    <orderEntry type="module-library" scope="TEST"> 
     <library> 
     <CLASSES> 
      <root url="jar://$APPLICATION_HOME_DIR$/lib/junit-4.10.jar!/" /> 
     </CLASSES> 
     <JAVADOC /> 
     <SOURCES /> 
     </library> 
    </orderEntry> 
    </component> 
</module> 

찾을 수는 없지만 그것은 지금 작동하지 않습니다. 할 일에 대한 단서가 없습니다. 단언 할 때 진실이 효과적입니다. 우분투 11.04가 사용되고 있습니다.

답변

2

실수는 정규 표현을 반환해야

import static sun.nio.cs.Surrogate.is; 

is()에 있지만이 무엇이든, 그것은 부울을 반환합니다. 대신 org.hamcrest.Matchers.is 또는 org.hamcrest.CoreMatchers.is을 시도하십시오.

+0

'org.hamcrest.CoreMatchers.is'와'org.hamcrest.Matchers.is'를 시도했지만 여전히 찾을 수 없다고 말했습니다. 프로젝트 설정을 변경해야합니까? –

+0

@ShiheZhang -이 답변은 트릭을 수행해야하므로 최신 코드로 질문을 업데이트하십시오. –

+0

오류 메시지도 반드시 업데이트해야합니다. – Cephalopod