您好,我是 UI 测试新手,而且很 swift 。
我想做的只是点击 "+"右上角的按钮,然后点击 "first option"那出现了。 Xcode 说我的测试是成功的,但我的水龙头都没有做任何事情。这是我的代码
func test1() {
let app = XCUIApplication()
let addButtonButton = app.navigationBars["Timesheets"].buttons["add button"]
waitForElementToHittable(addButtonButton)
addButtonButton.tap()
let tablesQuery = app.tables
tablesQuery.cells.elementBoundByIndex(0).forceTap()
}
这里是 waitForElementToHittable() 和 forceTap() 的定义
func waitForElementToHittable(element: XCUIElement,
file: String = #file, line: UInt = #line) {
let existsPredicate = NSPredicate(format: "hittable == true")
expectationForPredicate(existsPredicate,
evaluatedWithObject: element, handler: nil)
waitForExpectationsWithTimeout(30) { (error) -> Void in
if (error != nil) {
let message = "Failed to hit \(element) after 30 seconds."
self.recordFailureWithDescription(message,
inFile: file, atLine: line, expected: true)
}
}
}
extension XCUIElement {
func forceTap() {
if self.hittable {
self.tap()
} else {
let coordinate: XCUICoordinate = self.coordinateWithNormalizedOffset(CGVectorMake(0.0, 0.0))
coordinate.tap()
}
}
}
任何指导将不胜感激。谢谢。
最佳答案
您确实忘记启动该应用:
let app = XCUIApplication()
app.launch() // missing in your code
关于ios - Xcode UI 测试按钮未点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37685425/