【问题标题】:Xcode 7 UI Test OrderXcode 7 UI 测试顺序
【发布时间】:2015-11-13 18:13:45
【问题描述】:

我有几个 UI 测试可以单独或分组成功。我最终将我的测试分解为特定的类并以这种方式运行它们。我遇到的问题是 Xcode 按字母顺序执行 UI 测试,而不是按写入/显示的顺序。关于如何解决这个问题的任何想法?

谢谢

【问题讨论】:

  • 为了我的测试,我写了几个辅助函数。 loginIfNeeded() 检查仅在登录页面上的标签,然后登录用户。类似的logoutIfNeeded() 可用于任何需要从登录屏幕开始的测试。
  • @JMFR 我是编写 UI 测试用例的新手。你能帮我吗,或者给我一些如何编写帮助函数的例子。谢谢

标签: ios xcode7 xcode-ui-testing


【解决方案1】:

一个好的测试套件不应该依赖于以特定的顺序执行。如果是这样,您可能会受到一些测试污染。我会将常见的初始化逻辑(例如登录用户)添加到相关测试的 setUp() 方法中。或者创建一个辅助方法并在类之间共享。再加上每次测试都重新启动应用程序,应该使测试的顺序无关紧要。

【讨论】:

  • 感谢您的回复。我对这一切都很陌生,目前对代码的经验很少。我确实找到了你的博客,而且很有帮助。
  • 虽然这在很大程度上是正确的,但我使用 UI 测试来快照 UI 并获得视觉签名,因此它们的顺序对我来说仍然很重要。
【解决方案2】:

XC 测试存在令人难以置信的错误。有时,似乎风向或地球自转速度将决定您是否遇到随机故障。我发现 在某种程度上 可以缓解这些令人沮丧的问题的一个解决方法是,如果您将其称为 tearDown() 函数:

XCUIApplication().terminate()

其中 XCUIApplication() 是您正在运行的应用程序。

【讨论】:

  • “难以置信”是轻描淡写
  • 我对此笑了,但后来我哭了)))因为我的测试不一致地失败,所以我也无法正确调试它,因为甚至重现失败都需要时间...... f %#k
猜你喜欢
  • 2015-12-10
  • 2015-11-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多