Einrichten eines benutzerdefinierten Assets-Verzeichnisses für Komponententests in Android Studio

Wir haben die nicht seltene Anforderung, Unit-Tests unserer Android-Anwendung durchzuführen, bei denen Assets verwendet werden, die nur für Unit-Tests erforderlich sind.

Mit dem Eclipse-basierten SDK war dies einfach und offensichtlich - das Testprojekt war ein separates Projekt mit einem eigenen Assets-Ordner. Mit Android Studio soll dies etwas sein, das man in build.gradle (oder nach Konvention) konfiguriert.

Unsere Komponententests werden endlich ausgeführt, aber ich habe alle Vorschläge zu einem benutzerdefinierten (und im Idealfall zusammengeführten) Asset-Ordner ausgeschöpft. Folgendes habe ich versucht:

Hinzufügen eines Testabschlusses zu SourceSets innerhalb des Android-Abschlusses (mit Abschluss meine ich das, was sich zwischen den geschweiften Klammern in build.gradle befindet).

androidTest {
    assets.srcDirs = ['src/androidTest/assets/']
}

Das Gleiche, aber mit "test" als Name des SourceSets (im Gegensatz zu "androidTest" oben) und auch mit "instrumentTest".

Verschiedene Kombinationen von oben sowie androidTest.setRoot ("test") und androidTest.setRoot ("androidTest"), die beide dazu führen, dass unsere Komponententests nicht erkannt werden ("leere Suite").

Diese Frage könnte allgemeiner ausgedrückt werden als "Wie werden in Android Studio verschiedene Verzeichnisse für Komponententests verwendet".

Wir haben die Dokumentation von Android überarbeitet und entweder verstehen wir sie nicht, es ist falsch oder irgendwo ist ein Fehler aufgetreten.

Jede Hilfe wäre sehr dankbar.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage