我有一个带有3个标签的简单界面。我希望能够确定分配给特定标签的实际文本。在IB内部设置的文本为“我有标签文本”。该标签的IB标识符为“lastLabel”。

    func testDetermineLabelText(){
         let app = XCUIApplication()
         let allLabels = app.staticTexts
         let labelPredicate = NSPredicate(format: "identifier contains[cd] 'lastLabel'") //i set the identifier in IB to be 'lastLabel'
         let foundLabel = allLabels.containing(labelPredicate)
         XCTAssert(foundLabel["lastLabel"].title == "I have label text")
    }

最佳答案

对于UILabel,可从label属性获得文本。

let app = XCUIApplication()
let lastLabel = app.staticTexts["lastLabel"]
XCTAssertEqual(lastLabel.label, "Desired text")

10-08 03:33