web-dev-qa-db-fra.com

Android Test Orchestrator ne fonctionne pas avec Android X

J'ai récemment migré mon projet pour utiliser AndroidX et j'ai configuré test orchestrator pour mes tests expresso sur gradle à l'aide des documents suivants:

https://developer.Android.com/training/testing/junit-runner#using-Android-test-orchestrator

J'ai la dépendance:

androidTestUtil 'androidx.test:orchestrator:1.1.0-beta01'

Cependant, aucun de mes tests n'est exécuté et semble échouer lors de l'exécution de gradle exécute la commande Shell adb suivante, à savoir:

adb Shell 'CLASSPATH=$(pm path Android.support.test.services) app_process / \
  Android.support.test.services.shellexecutor.ShellMain am instrument -w -e \
  targetInstrumentation com.example.test/androidx.test.runner.AndroidJUnitRunner \
  Android.support.test.orchestrator/.AndroidTestOrchestrator'

en regardant ce qui précède: Il semble qu'il essaie d'exécuter cette commande avec Android supporte la version par opposition à la version androidx.

Il ne semble pas être documenté où utiliser Androidx.

13
FlashAsh99

En devinant, j'ai changé ce qui suit dans ma configuration gradle

de:

  testOptions {
    execution 'Android_TEST_ORCHESTRATOR'
  }

à

  testOptions {
    execution 'ANDROIDX_TEST_ORCHESTRATOR'
  }

et tout semble fonctionner.

18
FlashAsh99

Pour toute autre personne aux prises avec le message d'erreur Cannot convert string value 'ANDROIDX_TEST_ORCHESTRATOR' to an enum value of type 'com.Android.builder.model.TestOptions$Execution' (valid case insensitive values: Host, Android_TEST_ORCHESTRATOR), ANDROIDX_TEST_ORCHESTRATOR semble incompatible avec la dernière version d'IntelliJ (2018.3.5), cela a bien fonctionné dans Android Studio (3.3.2).

1
realitydisorder