web-dev-qa-db-fra.com

android Différence entre testImplementation et androidTestImplementation dans build.gradle

J'utilise andorid studio 3.2 et je suis novice dans les tests. Je veux ajouter une bibliothèque de tests mais je ne comprends pas ce que je devrais écrire dans la section des dépendances testImplentation ou androidTestImplementation. Quelle est la différence entre ces deux?

19
srb1991

Si vous créez Android projet en utilisant Android Studio. Vous pouvez trouver trois répertoires suivants: (chaque répertoire appelé Source Set )

  • app/src/main
  • app/src/androidTest: for Android Test d'interface utilisateur. Il nécessite un périphérique virtuel ou réel. (Espresso, automate d'interface utilisateur)
  • app/src/test: pour Android test indépendant.

Le répertoire androidTest peut être automatisé en touchant l'écran et en testant ce qui est affiché.
Dans le répertoire test, nous faisons principalement unit tests comme tester une fonction.

Mais le répertoire de test ne concerne pas uniquement le test unitaire. Vous pouvez également écrire un test d'intégration comme un appel HTTP. Même vous pouvez UI test dans le répertoire test à l'aide de la bibliothèque Robolectric (c'est vraiment rapide plutôt que l'espresso)

Alors, qu'est-ce que testImplementation et androidTestImplementation? (chacun appelé Configuration )

  • testImplementation: ajoute une dépendance pour test ensemble de sources
  • androidTestImplementation: ajoute une dépendance pour androidTest ensemble de sources

Voir ces articles pour plus de détails.

31
galcyurio