ios - 是否可以在 iOS 中同时自动化两个应用程序?

标签 ios automation appium ui-automation xcuitest

我们有这样的场景:

在 app1 中执行脚本,在特定步骤中,app1 向我们发送了一 strip 有 URL 的短信,app1 需要文本字段中的验证码

我们必须打开 SMS 应用程序来验证 SMS 是否存在,这条 SMS 有一个 URL,当我们点击它时,它会再次将我们发送到 app1,但验证码会自动写入文本字段。

然后,继续脚本。

这有可能吗? 我们需要什么才能做到这一点?

谢谢。

最佳答案

对于 iOS,您可以打开 SMS 应用程序并在该应用程序中执行任何您喜欢的操作。例如,您可以打开短信应用程序,然后打开最新消息,然后单击(或复制)链接。

我用 ruby 。我使用基于 XCUITest 驱动程序的方法(Noyo 已经链接) 可以使用的方法如下:

启动设备上安装的任何应用程序的方法:

def launch_system_app(bundle_id)
  @driver.execute_script('mobile: launchApp', {'bundleId': "#{bundle_id}"});
end

终止启动的应用程序的方法:

def terminate_system_app(bundle_id)
  @driver.execute_script('mobile: terminateApp', {'bundleId': "#{bundle_id}"});
end

将给定字符串复制到 iOS 设备剪贴板的方法:

def set_pasteboard(content)
  @driver.set_clipboard(content: content)
end

使用“信息”app bundle id 调用:

launch_system_app("com.apple.MobileSMS")
terminate_system_app("com.apple.MobileSMS")

关于ios - 是否可以在 iOS 中同时自动化两个应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43126999/

相关文章:

ios - 错误 Nil 与预期的参数类型不兼容 '() -> Void'

iOS:针对 iOS 9 时使用 Swift 4

linux - 在多个浏览器中在 selenium 中运行测试,同时在每个测试用例之后清理数据库

automation - 如何使用 OEMDRV 卷自动安装 CentOS7 最小启动安装?

java - Appium 检查器错误,找不到要启动的设备错误

java - 如何在 Windows 7 机器上通过 cmd 提示符启动 appium 节点服务器

ios - 使用 Xcode Beta 6 的 MPMoviePlayerPlaybackDidFinishNotification 架构 arm64 的 undefined symbol

ios - 从中心点调整 UIImageView 的大小

python - 以编程方式重新启动 Windows 以使系统日志认为用户已注销

java - 我如何使用 TestNG 框架执行 xml 文件中多个类的脚本