我需要检查具有特定bundleIdentifier
的应用程序是否安装在活动设备或模拟器上,并且我需要通过XC UI测试执行此操作。
我试过做:
import XCTest
class ServerLoop: XCTestCase {
func testRunAppInstalled() async throws {
let app = XCUIApplication("pl.bartekpacia.SomeApp")
if app.exists {
// code
}
}
}
但不幸的是,它只告诉我应用程序当前是否打开,而不是安装。
我希望能够检查是否安装了 * 任何应用 *,而不仅仅是我的应用。我需要这个,因为如果没有安装bundleId
的应用,而我做了XCUIApplication(bundleId)
,那么测试失败,没有办法阻止它这样做。
2条答案
按热度按时间nuypyhwy1#
我无法使用包标识符,但如果你有应用程序的名称,因为它在springboard上是可见的,这段代码在我的测试中工作:
lvmkulzt2#
看起来SpringBoard解决方案是一个很好的解决方案。
您也可以尝试启动XCUIApplication,并预期XCTExpectFailure在非严格模式下测试失败,且XCTestCase上的continueAfterFailure属性设定为true。