Значение текстового представления XCUIElement равно нулю в iOS 12 симуляторе - PullRequest
0 голосов
/ 09 января 2020

У меня есть текстовое представление, текстовое значение которого отличается от пустой строки, которое я получаю следующим образом:

let textViews = self.app.textViews.matching(identifier: "CommentTextView")
XCTAssertEqual(textViews.count, 1)

commentTextView = textViews.element(boundBy: 0)
XCTAssert(commentTextView.exists)

guard let text = commentTextView.value as? String else {
    XCTFail()
    return
}

Теперь этот тест не проходит на симуляторе iOS 13, и я Я могу проверить, что строковое значение является правильным. Но на симуляторе iOS 12 значение равно нулю, и тест не пройден. И он также не работает на симуляторе iOS 11. Любая идея, почему это терпит неудачу только для iOS 12 или ниже? Есть ли другой способ получить значение текстового представления?

Обновление: я пробовал также на реальном устройстве с iOS 12, и тесты не дают сбой. На данный момент мне кажется странным, что тесты проваливаются только на симуляторе, и я подозреваю, что это может быть ошибкой в ​​API.

1 Ответ

0 голосов
/ 09 января 2020

Несколько вещей могут быть не правы здесь. Вы переходите с нового экрана? Если это так, вы должны ждать существования. При поиске элементов в моем тесте я пишу что-то похожее на следующее:

// Set globally. You can use one for api calls and the other for transition timeouts.
let defaultTimeout = 70.0
let transitionTimeout = 5.0

let commentTextView = self.app.textViews["CommentTextView"].firstMatch
let commentTextViewFound = commentTextView.waitForExistence(timeout: self.transitionTimeout)
XCTAssert(commentTextViewFound, "CommentTextView was not found.")


// Already transitioned at this point. No need to wait for existence again.

let buttonExample = self.app.buttons["ButtonExample"].firstMatch
XCTAssert(buttonExample.exists, "ButtonExample was not found.")

buttonExample.tap()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...