gpt4 book ai didi

ios - XCUIApplication 替换 UIATarget captureScreenWithName()

转载 作者:行者123 更新时间:2023-11-29 11:55:31 25 4
gpt4 key购买 nike

我们正在尝试从 UIAutomation 迁移到 XCUITests,并且确实使用了 captureScreenWithName() API 以编程方式生成屏幕截图。XCUITests 中的替代品是什么?(我知道在出现错误的情况下会自动截取屏幕截图,但我们有一个特殊的测试,它会永远循环运行并通过网络评估 QA click,tap 命令,类似于 appium-xcuitest-driver https://github.com/appium/appium-xcuitest-driver )我是否需要像 appium 人员那样删除私有(private) header (XCAXClient_iOS.h) 以获得屏幕截图 API?

编辑我将实际代码行用于接受的解决方案 https://github.com/fastlane/fastlane/blob/master/snapshot/lib/assets/SnapshotHelper.swift这只是 IOS

 XCUIDevice.sharedDevice().orientation = .Unknown

或者在 objC 中

[XCUIDevice sharedDevice].orientation =UIInterfaceOrientationUnknown;

我在主机上使用一个进程在“Logs/Test/Attachments”目录中查找调用前的所有 Screenshot_*.png 文件,然后在调用后找到新的截图作为添加到该目录中的新文件。

最佳答案

手势(点击、滑动、滚动...)会导致屏幕截图,而且屏幕截图也经常在定位元素或评估期望时进行。

FaSTLane 的快照工具使用旋转到未知方向来触发屏幕截图事件(对应用程序没有影响):https://github.com/fastlane/fastlane/tree/master/snapshot - 如果您想控制某些屏幕截图,可以使用它。

关于ios - XCUIApplication 替换 UIATarget captureScreenWithName(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39300947/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com