Festlegen von Testabhängigkeiten mit dem Gradle Android Build System

Ich möchte Abhängigkeiten für meine Tests angeben und nach dem Lesen der Gradle Dependency Management Grundlagen Ich könnte aber nur testCompile Aufrufe zu meiner Abhängigkeit Deklarationen wie testCompile hinzufügen:

 dependencies { compile group: 'com.squareup.dagger', name: 'dagger', version: '1.0.0' testCompile group: 'junit', name: 'junit', version: '4.11' testCompile group: 'com.squareup', name: 'fest-android', version: '1.0.1' } 

Dies scheitert jedoch bei dieser Fehlermeldung:

  • Erkennung von Zustandsänderungen am BluetoothAdapter?
  • Wie kann man den On / Off-Status in onStop () überprüfen?
  • Google Maps Android API v2 - Beispielcode stürzt ab
  • Wie kann ich Log-Levels in Android aktivieren / deaktivieren?
  • Wie kann ich eine Telefonnummer mit Android-Kontaktdialog wählen?
  • Match_parent funktioniert nicht für ListView, wenn ListView in NestedScrollView ist
  •  > Could not find method testCompile() for arguments [{group=junit, name=junit, version=4.11}] on project ':simstatus'. 

    Bin ich hier etwas fehlt

    ( Full gradle Build-Datei als Referenz )

  • Erkennung der Power-Taste lange drücken
  • Wie bekomme ich zufällig eine Material Design Farbe?
  • So stellen Sie den Kalender in android für bestimmte Stunde ein
  • Wie kann ich TypefaceSpan oder StyleSpan mit einem benutzerdefinierten Typeface verwenden?
  • Verknüpfung der Kontext-Bar, während die Navigationsschublade geöffnet ist
  • HttpURLConnection zum Senden von Bild-, Audio- und Videodateien mit Parameter kann (String oder Json String) Android
  • 2 Solutions collect form web for “Festlegen von Testabhängigkeiten mit dem Gradle Android Build System”

    Das Android-Build-System verwendet nicht das Standard-Java-Plugin von Gradle.

    Die Dokumentation sagt:

    Wie bereits erwähnt, befindet sich neben dem Haupt-SourceSet das androidTest sourceSet, das standardmäßig in src / androidTest /

    Darüber hinaus kann das sourceSet so konfiguriert werden, dass es eigene Abhängigkeiten hat. Standardmäßig werden die Anwendung und ihre eigenen Abhängigkeiten zum Test-App-Klassenpfad hinzugefügt, aber dies kann mit verlängert werden

     dependencies { androidTestCompile 'com.google.guava:guava:11.0.2' } 

    Nur um diese Frage vollständig zu beantworten, ist dies, was benötigt wird, um das Problem zu lösen. Da Junit für lokale Tests und Guave gesucht werden könnte für androidTest die Android DSL sollte dies enthalten:

     android { : sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src/main/java'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] : } test { java.srcDirs = ['src/test/java'] resources.srcDirs = ['src/test/resources'] : } androidTest.setRoot('tests') } : } 

    Das bedeutet andere Aussagen, die du brauchst. Bitte beachten Sie auch, dass die Ordner andere als die oben genannten sind.

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.