Как приостановить XCUITest для ручной симуляции манипуляции? - PullRequest
0 голосов
/ 11 ноября 2018

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

Прямо сейчас я просто делаю это:

class QDBUITestHost: XCTestCase {

  override func setUp() {
    continueAfterFailure = false
    XCUIApplication().launch()
  }

  override func tearDown() {}

  func testHosting() {
    let app = XCUIApplication()
    app.buttons["Select Group"].tap()
    app.sheets.buttons["com-mist-qdb-1"].tap()
    app.buttons["Host"].tap()
    sleep(600) // This is an ugly hack
  }

}

Итак, есть ли лучший способ сделать это, чем просто sleep(600)?

1 Ответ

0 голосов
/ 27 ноября 2018

Существует xctwaiter framework.

Вы можете использовать ожидания, чтобы дождаться результатов. Они очень гибкие.

let result = XCTWaiter().wait(for:[expectation], timeout: 10)

Как использовать ожидание, которое вы можете увидеть в документации. Пример .

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