2
這是我到目前爲止,我只是試圖得到的結果是在標籤輸出並測試它反對的結果集:如何從UI標籤檢索變量數據測試
func testExample() {
let app = XCUIApplication()
let enterRomanNumeralsHereTextField = app.textFields["Enter roman numerals here"]
enterRomanNumeralsHereTextField.tap()
let convertButton = app.buttons["Convert"]
//1
enterRomanNumeralsHereTextField.typeText("LL")
convertButton.tap()
XCTAssertTrue(app.staticTexts.element(matching:.any, identifier: "Roman Numerals").label == "NotValidRomanNumber")
//2
enterRomanNumeralsHereTextField.typeText("LXXXIX")
convertButton.tap()
XCTAssertEqual(app.otherElements.containing(.staticText, identifier:"Roman Numerals").element.value as! String, "89")
//3
enterRomanNumeralsHereTextField.typeText("")
enterRomanNumeralsHereTextField.typeText("LXXVIII")
convertButton.tap()
XCTAssertEqual(app.otherElements.containing(.staticText, identifier:"Roman Numerals").element.value as! String, "")
// Use recording to get started writing UI tests.
// Use XCTAssert and related functions to verify your tests produce the correct results.
}
第一次嘗試(標記爲1)給我一個構建錯誤,說「無法調用非函數類型XCUIElement的值。 第二次嘗試生成但測試失敗,因爲即使標籤的確產生了正確的值,測試也正在讀取標籤作爲空白,帶給我們第三次通過測試的機會,因爲我將它與空白標籤進行了比較,這就是它的顯示效果。
所以,正如我上面所說,我只是想知道如何檢索標籤值是「計算」或按鈕按下的結果。
我真的有很多與它的麻煩。謝謝。 – andrei
@joem你怎麼知道要使用哪個屬性? – tomkaith13
@ tomkaith13我看了'XCUIElementAttributes''XCUIElement'符合。該協議爲所有UI元素定義了暴露的屬性。然後,我只是在查詢'UILabel'時查看了這些屬性的值。 – joern