2016-03-27 3 views
1

コードLVActivityでAndroid JUnitテストでは、assertThatで(ブール値)を解決できません。

import com.myapp.LVActivity; 
import org.junit.Test; 
import static org.junit.Assert.*; 

public class DeviceUnitTest { 
    @Test 
    public void check_that_is_correct_device_name_isTrue() { 
     assertThat(LVActivity.isCorrectDevice("MySpecialDevice"), is(true)); 
    } 
} 

dependencies {  
    testCompile 'junit:junit:4.12' 
    testCompile 'org.mockito:mockito-core:1.10.19' 
} 

build.gradle中:エラーはここにある

private final static String correctName = "MySpecialDevice"; 
public static boolean isCorrectDevice(String deviceName) { 
    return deviceName.equals(correctName); 
} 

is(true) 

エラー:

Cannot resolve method is(boolean) 

私は単純なローカルユニットテストをしようとしています。私はこのチュートリアルにhttp://developer.android.com/training/testing/unit-testing/local-unit-tests.html

+0

あなたは 'Matchers.is'の静的な輸入を必要とするか、または完全にあなたがしたいと言うの呼び出しを修飾ます'Matchers'クラスから' is'メソッドを使います。 – kryger

+0

この質問は私の時間を節約しました...実績 –

答えて

6

を以下のよ

は、あなたではなく、単に言わないだろう:

import static org.junit.Assert.*; 

assertTrue(LVActivity.isCorrectDevice("MySpecialDevice")); 

これはブール値をチェックするため、より自然な表現です。

しかし、あなたがassertThatisマッチャーを使用する必要がある場合は、このインポートが必要になります。

import static org.hamcrest.CoreMatchers.*; 
+0

ご協力ありがとうございました。 – Adz

関連する問題