【问题标题】:Check Email during Xcode UI Testing?在 Xcode UI 测试期间检查电子邮件?
【发布时间】:2014-05-12 16:01:30
【问题描述】:

更新:使用新的 UI testing with Xcode 方式仍然可以实现吗?

我可以通过iOS UI Automation 脚本以编程方式访问我的电子邮件吗?

我想访问我的 iPhone 应用通过电子邮件发送到我的电子邮件帐户的注册代码。

【问题讨论】:

标签: ios swift testing ios-ui-automation xcode-ui-testing


【解决方案1】:

如果您有办法让您的设备/模拟器在应用程序中接收代码,那么您可以编写一个 iOS UIA 脚本来执行此操作。

但是,在 iOS UIA 内置工具的当前状态下,您无法访问应用之外的任何内容。所以基本上你不能启动你的应用程序,然后启动另一个应用程序(如 safari)去 mail.google.com blah blah。

让您的应用留在 iOS UIA 中最接近的方法是使用函数调用将您的应用发送到后台 X 秒。

【讨论】:

  • 可以,但是我可以通过 UI 自动化脚本以编程方式访问我的 Gmail 帐户吗?
  • 如果您的应用打开 WebView,您可以。但是,如果您的应用程序重定向到 Safari,那么您就不能。但是,您可以使用UIAHost.performTaskWithPathArgumentsTimeout 在主机上启动一个可以为您获取代码的外部脚本。
  • @Braains 对使用 Xcode 进行 UI 测试的新方法有什么想法吗?它似乎没有像UIAHost.performTaskWithPathArgumentsTimeout 这样的东西。见stackoverflow.com/questions/35678717/…
  • 我不再是自动化工程师,所以我还没有检查新框架。然而,它似乎比以前更严格地定义,因为它非常努力地只让你模拟用户可以做的事情。据推测,如果没有 UI,用户就无法向主机发送消息。我已经看到一些关于将启动参数传递给代码的 cmets,因此如果您需要访问代码,您可以将应用程序设置为使用已知数据响应启动参数。如果您只需要确保电子邮件到达,您可以独立编写脚本并合并日志?
【解决方案2】:

使用 NSURLSession 从测试方法中发出 HTTP 请求。见:https://stackoverflow.com/a/35708282/242933

【讨论】:

    猜你喜欢
    • 2015-12-06
    • 2021-04-20
    • 2023-04-05
    • 2011-05-26
    • 2013-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多