【问题标题】:iOS XCTestCase to launch, perform some actions, kill the app and re-launch appiOS XCTestCase 启动、执行一些操作、终止应用并重新启动应用
【发布时间】:2017-05-10 02:35:23
【问题描述】:

我必须在 iOS 模拟器上使用 swift 和 XCTestCase 自动化以下场景。

  • 第 1 步:启动应用程序
  • 第 2 步:在应用上执行一些操作
  • 第 3 步:杀死应用程序
  • 第 4 步:重新启动应用并检查执行的操作是否持久

我在我们的一个问题中发现使用下面的 sn-p。

    XCUIDevice.shared().press(XCUIDeviceButton.home)
    sleep(60)
    XCUIDevice.shared().siriService.activate(voiceRecognitionText: "Open {appName}")

这对我不起作用,请有人建议任何不同的方法。

谢谢,

【问题讨论】:

  • 你在做单元测试,对吧?如果是这样,您能否切换到 Xcode UI 测试 进行此特定测试?

标签: ios swift xctest xctestcase


【解决方案1】:

要启动或重新启动,请使用launch:

XCUIApplication().launch()

要终止应用程序,请使用terminate()。但是根据documentation

如果应用程序已经在运行,此调用将终止现有实例,以确保新启动的实例处于干净的启动状态。

很快。您的测试可能如下所示:

XCUIApplication().launch()
// some actions
XCUIApplication().launch()
// some action

【讨论】:

  • 不错的答案!但我相信这只有在他使用 UI 测试(而不是单元测试)时才有效,对吧?
  • 是的。这仅适用于 UI 测试。我怀疑它可以通过单元测试来完成。
猜你喜欢
  • 2017-01-19
  • 1970-01-01
  • 2020-04-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-18
相关资源
最近更新 更多