是否可以同时在多个模拟器设备上进行 iOS XCUITesting?
Is it possible to do iOS XCUITesting on multiple simulator devices simultaneously?
我有一个应用程序,在生产中将在五个不同的设备上使用 MultipeerConnectivity
相互交谈。我有一个 bash 脚本,可以在五个不同的模拟器上启动应用程序。这很好用,但是每次我都必须在每台设备上点击很多按钮来测试所有内容。
所以我想也许 XCUITest
可以帮助实现自动化,并删除这些外部 bash 脚本依赖项(想在 Xcode/Swift 中完成所有事情)。我尝试了这样一种天真的方法:
func testExample() {
// Use recording to get started writing UI tests.
// Use XCTAssert and related functions to verify your tests produce the correct results.
let app1 = XCUIApplication(bundleIdentifier: "com.madebymist.qdb-ios")
let app2 = XCUIApplication(bundleIdentifier: "com.madebymist.qdb-ios")
app1.launch()
app1.buttons["Select Group"].tap()
app1.sheets.buttons["Group one"].tap()
app1.buttons["Host"].tap()
// Launch and test App 2
app2.launch()
app2.buttons["Select Group"].tap()
app2.sheets.buttons["Group one"].tap()
app2.buttons["Join"].tap()
}
但这只是在同一个模拟器中一个接一个地启动应用程序。
那么,有什么方法可以在多个模拟器设备上同时实现 XCUITest 吗?(最好在 Xcode/Swift 内,但其他选项也可以)。
是的,因为 Xcode 10 你可以 运行 并行测试
- Select 您在 Xcode 和 "Edit Scheme..."
中的目标方案
- 找到 "Test" 的设置,然后按 "Info" 选项卡
- 您将看到您的单元列表和 UI 测试,按相关的
"Options..." 按钮
- Select "Execute in parallel on Simulator"
- 可选select"Randomize execution order"
我有一个应用程序,在生产中将在五个不同的设备上使用 MultipeerConnectivity
相互交谈。我有一个 bash 脚本,可以在五个不同的模拟器上启动应用程序。这很好用,但是每次我都必须在每台设备上点击很多按钮来测试所有内容。
所以我想也许 XCUITest
可以帮助实现自动化,并删除这些外部 bash 脚本依赖项(想在 Xcode/Swift 中完成所有事情)。我尝试了这样一种天真的方法:
func testExample() {
// Use recording to get started writing UI tests.
// Use XCTAssert and related functions to verify your tests produce the correct results.
let app1 = XCUIApplication(bundleIdentifier: "com.madebymist.qdb-ios")
let app2 = XCUIApplication(bundleIdentifier: "com.madebymist.qdb-ios")
app1.launch()
app1.buttons["Select Group"].tap()
app1.sheets.buttons["Group one"].tap()
app1.buttons["Host"].tap()
// Launch and test App 2
app2.launch()
app2.buttons["Select Group"].tap()
app2.sheets.buttons["Group one"].tap()
app2.buttons["Join"].tap()
}
但这只是在同一个模拟器中一个接一个地启动应用程序。
那么,有什么方法可以在多个模拟器设备上同时实现 XCUITest 吗?(最好在 Xcode/Swift 内,但其他选项也可以)。
是的,因为 Xcode 10 你可以 运行 并行测试
- Select 您在 Xcode 和 "Edit Scheme..." 中的目标方案
- 找到 "Test" 的设置,然后按 "Info" 选项卡
- 您将看到您的单元列表和 UI 测试,按相关的 "Options..." 按钮
- Select "Execute in parallel on Simulator"
- 可选select"Randomize execution order"