web-dev-qa-db-fra.com

Impossible d'exécuter XAMARIN UI TEST sur xamarin.forms, erreur System.Exception

Je veux exécuter le test d'interface utilisateur de Xamarin, mais lorsque j'exécute le test, j'ai cette erreur:

System.Exception : 'The running adb server is incompatible with the Android SDK version in use by UITest: 
C:\Program Files (x86)\Android\android-sdk

ma ligne de commande de démarrage: _return ConfigureApp.Android.ApkFile("/Users/Jerem/source/repos/App4/App4/App4.Android/bin/Debug/com.companyname.App4-Signed.apk").StartApp();_

Merci pour notre aide

15
Jeremy HOFFMANN

Si vous avez la même erreur, vérifiez dans notre répertoire sdk si vous avez platform-tools et platform-tools.oldxxxx, supprimez l'ancien! Travaille juste après

20
Jeremy HOFFMANN

La réponse de Y Nakamura m'a fait avancer dans la bonne direction mais il m'a quand même fallu beaucoup de temps pour résoudre car je n'étais pas sûr de ce que j'essayais de résoudre. Je vais développer la réponse ici au cas où d'autres rencontreraient les mêmes problèmes que moi.

Comme mentionné, le problème semble être causé par les fichiers (pas sûr que ce soit adb.exe ou d'autres fichiers) à l'intérieur des outils de plateforme non pris en charge par Xamarin.UITest. les outils de plate-forme se trouvent dans C:\Program Files (x86)\Android\android-sdk

J'avais dossier platform-tools , plus deux dossiers supplémentaires avec old12341234 suffixes (les chiffres n'avaient aucun sens pour moi).

Pour déterminer quelle version d'adb.exe se trouve dans chaque dossier:

  1. Ouvrez l'un des dossiers
  2. Maintenez la touche Maj enfoncée et cliquez avec le bouton droit dans la fenêtre de l'Explorateur Windows pour voir l'option Ouvrir la fenêtre PowerShell ici
  3. Dans PowerShell, exécutez la commande ./adb.exe version pour voir le numéro de version que vous utilisez Powershell adb version

Dans mon cas, la version trop nouvelle était 1.0.40 . J'ai trouvé un dossier qui avait 1.0.39 . J'ai renommé le dossier platform-tools qui était trop nouveau pour platform-toolsTooNew . J'ai ensuite renommé le dossier contenant adb.exe v 1.0.39 en platform-tools , puis j'ai redémarré Visual Studio.

Après avoir fait tout cela, mes tests automatisés ont encore une fois fonctionné!

7
Victor Chelaru

Android SDK Platform-Tools 28.0.0 (40) est trop nouveau. Essayez de restaurer 27.0.1 (39). Dossier ouvert %Android_HOME%. Si les dossiers platform-tools et platform-tools.oldxxxx apparaît, renommez-les pour restaurer l'ancienne version.

6
Y Nakamura