2016-06-14 11 views
6

AndroidのUIテストフレームワークの一部をインポートする際に問題が発生しました。何がうまくいかないのか分かりません。ユニットテストクラスにAndroidJUnit4とActivityTestRuleをインポートできないのはなぜですか?

これは私のクラスである:

@RunWith(AndroidJUnit4.class) 
@LargeTest 
public class ExampleUnitTest { 

@Rule 
public ActivityTestRule<MainActivity> mActivityRule = new ActivityTestRule(MainActivity.class); 

@Test 
public void listGoesOverTheFold() { 
    onView(withText("Hello world!")).check(matches(isDisplayed())); 
} 

}

しかし、私はエラーを取得するいくつかの理由で「シンボルActivityTestRuleを見つけることができない」と「記号を見つけることができませんAndroidJUnit4」。私はそれらをインポートしようとしましたが、見つけられません。私は多くのことをしようとしているが、運としてきた - だから私は、私はすべての依存関係を設定していると思います

compile fileTree(dir: 'libs', include: ['*.jar']) 
testCompile 'junit:junit:4.12' 
compile 'com.android.support:appcompat-v7:23.4.0' 
androidTestCompile 'com.android.support:support-annotations:23.4.0' 

androidTestCompile 'com.android.support.test:runner:0.4' 
androidTestCompile 'com.android.support.test:rules:0.4' 
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.1' 
androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.2' 

:build.gradleで

依存関係は次のように設定されています。

誰もが考えている?

+0

何ディレクトリテストクラスが含まれている追加必要 - 'テスト/ java'または' androidTest/java'を? – Jahnold

+0

テスト中/ java – Hallupa

答えて

18

あなたはAndroidの

に設定することができますテストの2種類があります

ユニットは

  • これらはJVM上で直接実行し、Androidのフレームワーククラスへのアクセスを持っていないかどうかをテストします。彼らは
  • 依存関係は、これらのテストのためにRobolectric &のJUnit

計装テスト、あなたが一般的にMockitoを使用testCompile

  • コマンドでbuild.gradleファイルに追加する必要がtest/javaパッケージに保管されている
    • これらはAndroidエミュレータで実行され、フル
    • すべてのAndroidのクラスへのアクセス彼らが
    • 依存関係は、あなたが一般的にどのようなことから、これらのテストのために

    をエスプレッソとJUnitを使っandroidTestCompile

  • とbuild.gradleに追加する必要がandroidTest/javaパッケージに保管されています私はあなたがエスプレッソで計器試験を書こうとしているが、単体テスト用のtest/javaパッケージであなたのテストをしていると言うことができます。その場合は、テストクラスをandroidTest/javaパッケージに移動する必要があります。

  • +0

    ありがとうございました!私はテスト/ javaとandroidTest/javaの違いがあったことを認識していない – Hallupa

    4

    これは、依存関係

    testCompile 'com.android.support.test:rules:0.5' 
    testCompile 'com.android.support.test:runner:0.5' 
    
    関連する問題