iOS XCTestCase 启动、执行一些操作、终止应用并重新启动应用
Posted
技术标签:
【中文标题】iOS XCTestCase 启动、执行一些操作、终止应用并重新启动应用【英文标题】:iOS XCTestCase to launch, perform some actions, kill the app and re-launch app 【发布时间】: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 测试 进行此特定测试? 【参考方案1】:要启动或重新启动,请使用launch
:
XCUIApplication().launch()
要终止应用程序,请使用terminate()
。但是根据documentation:
如果应用程序已经在运行,此调用将终止现有实例,以确保新启动的实例处于干净的启动状态。
很快。您的测试可能如下所示:
XCUIApplication().launch()
// some actions
XCUIApplication().launch()
// some action
【讨论】:
不错的答案!但我相信这只有在他使用 UI 测试(而不是单元测试)时才有效,对吧? 是的。这仅适用于 UI 测试。我怀疑它可以通过单元测试来完成。以上是关于iOS XCTestCase 启动、执行一些操作、终止应用并重新启动应用的主要内容,如果未能解决你的问题,请参考以下文章
ios的单元測试OCUnit以及更新了之后的XCTestCase
如何在 XCTestCase 中测试 NSPersistentDocument?