【问题标题】:Why I can't touch the button in alert view, right after I see the alert?为什么我在看到警报后无法立即触摸警报视图中的按钮?
【发布时间】:2012-11-30 07:56:25
【问题描述】:

我正在使用名为“Frank”的自动化框架测试 iOS 应用程序

我的应用程序中弹出了一些警报,我需要覆盖。

我的功能文件如下:

设想: 我输入了错误的用户名和密码,我应该看到日志失败警报。 ... 当我等待看到“日志失败”时 然后我触摸标有“确定”的按钮

很遗憾,这段代码不起作用,虽然 frank(cucumber) 会将触摸“OK”按钮的测试步骤标记为通过,但实际上按钮不会被触摸。

我必须这样做:

设想: 我输入了错误的用户名和密码,我应该看到日志失败警报。 ... 当我等待看到“日志失败”时 #等待 1 秒以触摸按钮。 我等待 1 秒 然后我触摸标有“确定”的按钮

【问题讨论】:

  • 我不是您正在使用的框架的专家,但可能是在 UIAlertView 的动画仍在运行时发生触摸,此时按钮尚不可触摸。
  • @ValerioSantinelli 我同意你的看法,这是我最好的猜测。如果你愿意,你可以发表你的评论作为答案,我会接受的。

标签: ios testing cucumber bdd frank


【解决方案1】:

上面的评论可能是正确的 - 至于不同的(更好的?)解决方案 - 根据您对 ruby​​ 的舒适程度,您可以编写自己的步骤定义吗?弗兰克为您提供

Frank::Cucumber::WaitHelper.wait_until

方法,您可以将您的触摸按钮代码包裹起来,从而为您提供更长的隐式等待元素。请参阅此处获取一些文档:https://github.com/moredip/Frank/blob/master/gem/lib/frank-cucumber/wait_helper.rb

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-03
    • 1970-01-01
    • 1970-01-01
    • 2020-03-06
    • 1970-01-01
    相关资源
    最近更新 更多