Добавление нескольких элементов XCUITest TextField в цикле - PullRequest
0 голосов
/ 23 апреля 2020

В XCUITest в Xcode, как я могу добавить несколько записей, используя интерфейс. У меня 2-3 записи, которые мне нужно ввести через UITest, поэтому я запускаю все oop. Он запускает приложение, но затем l oop портит все, и иногда автоматизация XCUITest не завершается, а l oop работает быстро, поэтому не вводит правильный текст или не удаляет или удаляет текст после вставки.

 let rows: NSArray = (userInfo?["DataTable"]) as! NSArray

                let taskTextField = XCUIApplication().textFields["taskTextField"]

                for index in 1...rows.count {

                    let taskName = (rows[index] as! NSArray)[0] as! String
                    taskTextField.tap()
                    taskTextField.typeText(taskName + "\n")

                    XCUIApplication().buttons["addTaskButton"].tap()

                    taskTextField.tap()

                    let deleteString = String(repeating: XCUIKeyboardKey.delete.rawValue, count: taskName.count)

                    // clear the textfield
                    taskTextField.typeText(deleteString)
                }

Любая идея, как можно замедлить l oop или, возможно, использовать другую технику для вставки нескольких предметов.

1 Ответ

0 голосов
/ 24 апреля 2020

Вы должны попробовать утверждать (XCTAssertEqual(taskTextField.value, ...), ждать результатов каждого цикла (waitForExistence()) или просто использовать sleep(1)

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