2016-06-07 100 views
1

嗨我是新来的UI测试和迅速。Xcode UI测试按钮不点击

我想要做的只是点击右上角的"+"按钮,然后点击显示的"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() 
     } 
    } 
} 

任何指导,将不胜感激的定义。谢谢。

回答

0

你没忘了启动应用程序:

let app = XCUIApplication() 
app.launch() // missing in your code