it-swarm.com.de

Was ist der Unterschied zwischen den Ordnern src / androidtest und src / test?

In einem Projekt gibt es in Android Studio standardmäßig zwei Testordner.

Das erste ist src/androidTest. Dieser Ordner war bereits in der Vorgängerversion von Android Studio) vorhanden. Dennoch gibt es jetzt einen neuen Testordner, standardmäßig src/test und neue Abhängigkeit, testCompile 'junit: junit: 4.12' im build.gradle.

Welchen Ordner verwende ich zum Testen? Was sind die Unterschiede zwischen den beiden?

102
lopez.mikhael

src/androidTest ist für Komponententests vorgesehen, bei denen Android instrumentiert wird.

src/test ist für reinen Komponententest ohne das Android Framework. Sie können hier Tests ausführen, ohne auf einem realen Gerät oder einem Emulator zu laufen.

Sie können beide Ordner verwenden. Verwenden Sie den ersten, um Code zu testen, der das Android Framework verwendet. Verwenden Sie den zweiten, um Code zu testen, der rein ist Java Klassen. Die Methoden zum Schreiben von Tests sind fast das Gleiche.

Weitere Informationen hier: http://developer.Android.com/tools/testing/testing_Android.html

110
Bipi

Eine großartige Informationsquelle in Bezug auf Android Testen im Allgemeinen ist die Entwicklerseite Best Practices for Testing :

  • Lokale Einheitentests (/src/test/Java/)

Komponententests, die lokal auf der Java Virtual Machine (JVM)) ausgeführt werden. Verwenden Sie diese Tests, um die Ausführungszeit zu minimieren, wenn Ihre Tests kein Android Framework haben Abhängigkeiten oder wenn Sie die Android Framework-Abhängigkeiten. verspotten können

  • Instrumentierte Tests (/src/androidTest/Java/)

Unit-Tests, die auf einem Android Gerät oder Emulator ausgeführt werden. Diese Tests haben Zugriff auf Instrumentierungsinformationen, z. B. den Kontext der App, die Sie testen. Verwenden Sie diese Tests, wenn Ihre Tests durchgeführt wurden Android Abhängigkeiten, die Scheinobjekte nicht erfüllen können.

https://developer.Android.com/training/testing/start/index.html

35
Leszek Jasek