iOS XCTestCase 启动、执行一些操作、终止应用程序并重新启动应用程序

标签 ios swift xctest xctestcase

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

  • 第 1 步:启动应用
  • 第 2 步:在应用上执行一些操作
  • 第 3 步:终止应用
  • 第 4 步:重新启动应用并检查执行的操作是否持续

我在我们的一个问题中发现使用以下代码段。

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

它对我不起作用,有人可以建议任何不同的方法吗。

谢谢,

最佳答案

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

XCUIApplication().launch()

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

If the application is already running, this call will terminate the existing instance, to ensure a clean launch state for the newly launched instance.

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

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

关于iOS XCTestCase 启动、执行一些操作、终止应用程序并重新启动应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43882711/

相关文章:

ios - 在 Swift 3 中将图像写入 SQLite

ios - 如何 swift 将超时设置为 NSTimer?

ios - 在所有 View 上添加导航栏。 swift

xcode - Xcode 单元测试中没有播放按钮

ios - MonitoringForRegion 没有给出输出?

ios - iphone 开发 : nstimer calling a function

ios - 将 __NSCFNumber 转换为 Int32 Swift

objective-c - Swift 数组与 C 的互操作性?

ios - Swift UITest 在 tableviewcell 中找不到 collectionview

ios - Xcode 测试用例显示没有测试覆盖率