ios - 防止faSTLane扫描隐藏模拟器

标签 ios xcode fastlane

自从最近对 faSTLane 进行了一些更新后,它就阻止了模拟器打开可见窗口。仍然可以听到键盘按钮的敲击声,并且执行了 UI 测试,但模拟器窗口本身没有打开。

在大多数情况下这没问题,但是现在我需要深入挖掘并查看发生了什么,因为 faSTLane 执行的测试与 Xcode 略有不同,导致我们的 CI 服务器崩溃。 (Xcode = 所有测试运行顺利。faSTLane = 所有 UI 测试都失败,本地和 CI 服务器。)

那么:有没有办法,一些参数或环境变量,告诉扫描打开那个窗口,以便能够看到发生了什么?

(是的,我可以使用 snapshot 在特定点生成屏幕截图,但是当想要找出到底发生了什么时,这根本不够。)

希望有人能帮忙:)

找到解决方案:

scan 应该使用已经打开的模拟器,但是当模拟器正在运行时,我在运行 scan 时收到错误消息。更新到 2.68.0 对我有用。

最佳答案

不幸的是,快照和扫描没有内置选项。作为解决方法,您可以手动启动模拟器(右键单击 Dock 中的 Xcode 图标,Open Developer Tool > Simulator)。

如果模拟器在运行时打开,快照将关闭模拟器并打印以下行:

Patching simulators '/Users/<home>/Library/Preferences/com.apple.iphonesimulator.plist' to scale to 100%

之后,就可以安全地重新启动模拟器了。对于扫描,您只需让模拟器保持运行即可。

当快照或扫描启动您配置的模拟器并且模拟器应用程序正在运行时,窗口将出现,您将能够看到发生了什么 - 但要小心,因为快照现在同时运行,并且这将为所有 配置的设备打开窗口。

您可以将您的配置修改为仅在单个设备上运行,同时以这种方式进行测试,或者您可以通过从终端运行快照来运行一次性操作,如下所示:

fastlane run snapshot devices:"iPhone 6" languages:"de-DE" #... all other parameters are similarly supported

关于ios - 防止faSTLane扫描隐藏模拟器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47590658/

相关文章:

ios - 将 subview 的子类添加到 UIView 的子类

ios - navigationBar 标题变为默认黑色,而不是我在 viewWillAppear 中设置的颜色

ios - 将 64 位支持扩展到现有的 iOS 应用程序

android - 无法为 iOS 和安卓设置 faSTLane?

android - 在 React Native 中添加产品 flavor 的正确方法是什么?

ios - "Presenting a controller modally within a nav controller within a tab bar controller"的问题

ios - 如何在 View Controller 之间正确进行分隔

ios - UISearchBar 在操作文本字段时移动

ios - 框架无法在 Xcode 10 中链接

rubygems - 使用 homebrew cask、gem install 和 prepackaged 安装 faSTLane 有什么区别