ios - FaSTLane快照可以在真实的ios设备上运行吗?

标签 ios iphone xcode snapshot fastlane

我想知道是否可以从真实的 ios 设备(iPhone)上获取带有快照的屏幕截图。 I've found some outdated stuf但也许自 2016 年以来有些事情发生了变化...... 我有一个支持 15 种语言的应用程序,主要与相机一起使用(因此模拟器不适合),我需要为我们的文档制作大量屏幕截图。

如果我更改快照文件 并添加我的真实设备,我遇到了错误 快车道快照 enter image description here

所以它甚至没有为我提供使用真实设备而不是模拟器的选项

enter image description here

最佳答案

您将遇到的一个问题是屏幕截图不一致,这可能是问题,也可能不是问题。此外,还可能存在其他问题,例如对比度差、照片模糊等。

话虽如此,更好的方法是利用快速 channel 快照的启动参数并注入(inject)您选择的图像来模拟屏幕。这样,您就可以完全控制环境并确保结果一致。

首先,setupUp 函数中类似的内容可以帮助您开始:

class Screenshot: XCTestCase {
    var app: XCUIApplication!

    override func setUp() {
        super.setUp()

        app = XCUIApplication()
        app.launchArguments = ["isUITest"]
        setupSnapshot(app)
        app.launch()
    }
}

要在您的应用中检查这一点:

let isUITesting = ProcessInfo.processInfo.arguments.contains("isUITest")

现在,每当您的应用程序通过快照的 UI 测试启动时,您都可以知道这一点。有了这些信息,只需管理一个插入测试图像的 UIImageView ,即可模拟相机效果。现在,这将为您提供所有屏幕截图的一致外观。

关于ios - FaSTLane快照可以在真实的ios设备上运行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54406358/

相关文章:

ios - Objective-C 中非综合属性的弱/强注解

ios - 录制 iOS 对话。从哪儿开始?

ios - iOS swift 应用程序启动时出现黑屏

xcode - 图像并非全部显示在模拟器上,而是显示在 Storyboard中

ios - 意外的 HTTP 状态代码 : 403 (-1) Xcode

ios - iOS 7 中的 UITextView 行间距已更改 - 如何使用 Core Text 计算旧间距

iphone - 如何保证核心数据实体的单一实例

ios - 如果仅针对iPhone开发,是否必须使用大小类?

ios - 隐藏分段索引上的搜索栏为 1

ios - Swift: strikethroughStyle For Label (Middle Delete Line For Label)