我们正在使用 Appium 来测试我们的多平台应用程序。 (Windows、Android、iOS)。这个应用程序是使用 .Net 8 中的 C# 和 MVVMCross 编写的。
但是,大约一两个月前,当 Appium xcuitest WebDriverAgent 运行时,我们的应用程序在 iOS 上启动时崩溃。
查看日志和控制台,这是因为应用程序启动时间超过 19 秒。 如果 WebDriverAgent 未运行,应用程序将在不到一秒的时间内启动并且工作正常。
这似乎与确切的 .Net 版本有关,因为这种情况是在 .net 8.0.303 更新到 .Net 8.0.401 时开始发生的。但任何降级到 .Net 8.0.303 的尝试似乎都无法使其再次工作,这意味着要么我们的降级不起作用,要么是大约在同一时间更新的其他内容。
有人知道这可能是什么吗? 注意:我已将 Apium 和驱动程序更新到最新版本(并更新了 iPhone 上的 WebDriverAgent)。
编辑:更新 appium 及其驱动程序是解决此问题的尝试的一部分。它也停止使用旧版本,所以我不认为 Appium 直接负责这个不再工作。
Edit2:我们也刚刚意识到 ios 工作负载已收到更新。我们之前使用的是 8.0.300,现在是 8.0.401。不幸的是,我们也无法在构建服务器上降级来进行测试。
完整的解释可以在这里找到: https://github.com/xamarin/xamarin-macios/issues/21234
但这是因为 MvvmCross 属性中的“窗口”现在被导出到以前没有的地方。
解决方法是从故事板中删除“initialViewController”属性。