use*_*135 6 cocoa xctest swift xcode-ui-testing
我XCTest UI对Mac应用程序进行了相当正常的测试,该应用程序单击应用程序菜单中的某些菜单项以打开窗口.
在某些地方 - 比如我自己的Mac - 测试工作正常.但在其他地方 - 比如Travis CI- 他们失败了,出现了这个错误:
UI Testing Failure - Failed to receive event delivery confirmation within 2.5s of the original dispatch.
...
menuBarsQuery.menuBarItems["Top level menu item"].click()
menuBarsQuery.menuItems["Menu item in sub menu"].click()
Run Code Online (Sandbox Code Playgroud)
系统:
稍微消毒的测试用例版本:
import XCTest
class FooUITests: XCTestCase {
override func setUp() {
super.setUp()
continueAfterFailure = false
XCUIApplication().launch()
}
override func tearDown() {
super.tearDown()
}
func testCanDoSomething() {
let app = XCUIApplication()
let menuBarsQuery = app.menuBars
menuBarsQuery.menuBarItems["Top level menu item"].click()
menuBarsQuery.menuItems["Menu item in sub menu"].click()
let window = app.windows["Foo"]
// Rest of test, assertions, actions in window etc.
}
}
Run Code Online (Sandbox Code Playgroud)
它在本地不可复制,所以我会问听众......为什么会发生这种错误?