无法 运行 XAMARIN UI 在 xamarin.forms 上进行测试,错误 System.Exception

Cannot run XAMARIN UI TEST on xamarin.forms, error System.Exception

我想 运行 Xamarin UI 测试,但是当我 运行 测试时我有这个错误:

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

我的启动命令行: return ConfigureApp.Android.ApkFile("/Users/Jerem/source/repos/App4/App4/App4.Android/bin/Debug/com.companyname.App4-Signed.apk").StartApp();

感谢我们的帮助

Android SDK Platform-Tools 28.0.0 (40) 太新了。尝试恢复 27.0.1 (39)。打开文件夹 %ANDROID_HOME%。如果文件夹 platform-toolsplatform-tools.oldxxxx 出现,重命名它们以恢复旧版本。

如果出现同样的错误,查看我们的sdk目录是否有platform-tools和platform-tools.oldxxxx,删除旧的!在

之后工作

Y Nakamura 的回答让我朝着正确的方向前进,但我仍然花了很长时间才解决,因为我不确定我到底想解决什么。我将在这里扩展答案,以防其他人 运行 遇到与我相同的问题。

如前所述,问题似乎是由 Xamarin.UITest 不支持的平台工具内的文件(不确定是 adb.exe 还是其他文件)引起的。 platform-tools 可以在 C:\Program Files (x86)\Android\android-sdk

中找到

我有 platform-tools 文件夹,外加两个带有 old12341234 后缀的文件夹(这些数字对我来说没有任何意义).

要找出每个文件夹中 adb.exe 的版本:

  1. 打开其中一个文件夹
  2. 按住 shift 键并在 windows 资源管理器中右键单击 window 以查看 在此处打开 PowerShell window 选项
  3. 在 PowerShell 中,运行 命令 ./adb.exe version 查看您正在 运行ning 的版本号

就我而言,太新的版本是 1.0.40。我找到了一个包含 1.0.39 的文件夹。我将太新的 platform-tools 文件夹重命名为 platform-toolsTooNew。然后我将包含 adb.exe v 1.0.39 的文件夹重命名为 platform-tools,然后重新启动 Visual Studio.

完成所有这些之后,我的自动化测试又一次成功了!

2020 年 11 月更新

我可以 运行 使用较新版本的 ADB,但我必须从我的 [=80= 中删除 old 文件夹]-sdk 文件夹。我正在使用:

  • ADB 版本 1.0.41
  • Visual Studio 16.6.5
  • Xamarin 16.6.000.1064
  • Xamarin.Android SDK 10.3.1.4

我会保留上面的原始 post,以防对其他人有帮助。