Inilah yang saya miliki sejauh ini dan saya hanya mencoba mendapatkan hasil yang ditampilkan dalam label dan mengujinya terhadap hasil yang ditetapkan:
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.
}
Upaya pertama (berlabel 1) memberi saya kesalahan pembuatan yang mengatakan "tidak dapat memanggil nilai elemen XCUIE tipe non-fungsi. Upaya kedua membuat tetapi pengujian gagal karena meskipun label memang menghasilkan nilai yang benar, pengujian membaca label sebagai blank yang membawa kita ke percobaan ketiga saya yang lulus ujian karena saya membandingkannya dengan label kosong, itulah yang ditampilkannya.
Jadi seperti yang saya katakan di atas, saya hanya ingin tahu bagaimana sebenarnya cara mengambil nilai label yang merupakan hasil dari "perhitungan" atau penekanan tombol.