У меня есть набор тестов XCUI, которые демонстрируют некоторую функциональность в моем приложении. В настоящее время у меня есть следующая функция, которая поднимает клавиатуру, набирает некоторые вещи, затем нажимает «Поиск» (что эквивалентно Enter в этом контексте.
func clickSearchOnKeyboard(_ app: XCUIApplication) {
XCTAssert(app.staticTexts["Search"].waitForExistence(timeout: 10))
app.textFields["SearchItemView.SearchTextFieldID"].clearAndEnterText(testData.productData.valid.styleColor)
XCUIApplication().buttons["Search"].tap()
}
Однако после обновления симуляторов доiOS 13, этот тест не пройден, потому что теперь, когда клавиатура впервые поднята, появляется всплывающее окно «Что нового», объясняющее новую функциональность смахивания.

Я думаю, что могу просто добавить предложение If
в свой тестовый код, чтобы справиться с этим при первом его появлении, но мне интересно, если кто-нибудь нашел способ отключить такие вещи для тестирования на симуляторе:
- Что-то в методе
Init()
, которое отключало бы всплывающие окна типа «Что нового»? - Какая-то умная функция, которая всегда могла бы перехватить это событие и нажать «Продолжить»?
ДОПОЛНИТЕЛЬНЫЕ БОНУСНЫЕ ТОЧКИ: Эти автоматизированные тесты выполняются как часть автоматизированного конвейера. В связи с этим предполагается, что эти тесты выполняются на совершенно новом симуляторе. et (поэтому мы не можем повторно использовать существующие симуляторы). В частности, мы продуваем симуляторы (используя «Удалить все содержимое и настройки») перед каждым запуском. Поэтому любое решение должно быть полностью переносимым и требовать ручного вмешательства.
Что-то еще?