ios - 在 XCode Instruments 中,有没有办法在运行时通过 Javascript 找到模拟器的 iOS 版本

标签 ios xcode ios-simulator instruments ios-ui-automation

在执行自动化测试用例时,iOS 7.x 和 iOS 8.x 中要选择(“点击”)的对象是不同的,即使开发人员没有专门针对不同的 iOS 版本更改代码。我不想在 try catch block 中执行步骤,而是查询模拟器的 iOS 版本并执行正确的步骤。

对于 iOS 8,该步骤如下所示:

UIATarget.localTarget().frontMostApp().mainWindow().collectionViews()[0].cells()[1].segmentedControls()[0].buttons()["Expanded"].tap();

对于 iOS 7,步骤如下所示:

UIATarget.localTarget().frontMostApp().mainWindow().collectionViews()[0].cells()[1].buttons()["Expanded"].tap();

基本上,添加了 segmentedControls

有没有办法在自动化脚本运行时检查模拟器的 iOS 版本?

最佳答案

您可以用来做出此决定的是:

  1. SIMULATOR_RUNTIME_VERSION 环境变量
  2. 系统库的当前版本

使用 #1 可能更容易。

关于ios - 在 XCode Instruments 中,有没有办法在运行时通过 Javascript 找到模拟器的 iOS 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26182617/

相关文章:

xcode - iOS模拟器: how to close an app

ios自定义类初始化不工作

ios - 初始化 AVAudioPlayer 以用于多个函数

ios - 如何分发我的应用程序的多个版本?

ios - 无法将类型 '(_) -> ()' 的值转换为预期的参数类型 '(() -> Void)?'

ios - 失去与 iOS 8 模拟器的连接

ios - 查找 Metal 纹理中的最小值和最大值

ios - 哪个是通用 iOS 应用启动画面 iOS 12 的最佳方式?

xcode - CoreBluetooth 框架和 IOBluetooth 框架的区别

ios - 在 iPad 10.5 英寸模拟器中运行应用程序?