Я провожу некоторое тестирование пользовательского интерфейса, в котором он находит текстовое поле и печатает буквы для имитации пользовательского набора следующим образом:
app.keys["\(letter)"].tap()
I time this operation like:
let start = NSDate()
app.keys["\(letter)"].tap()
let end = NSDate()
Разница исследуется, чтобы увидеть, сколько времени это займет.Причина в том, что я исследую проблему, когда клавиатура иногда застревает для пользователей в приложении.Когда XCTest обнаруживает ситуацию, когда конец - начало> порога (4 секунды), он печатает это:
t = 3610.18s Wait for com.xxxx to idle
t = 3610.24s Find the "A" Key
t = 3614.35s Check for interrupting elements affecting "A" Key
t = 3614.35s Synthesize event
t = 3614.55s Wait for com.xxxx to idle
Time difference is 4.660948038101196 sec
Это показывает, что ключ поиска «A» выполняется, а затем через 4 секунды он выполняет«Проверка на предмет прерывания элементов, влияющих на клавишу« A »».Я пытаюсь понять, означает ли событие «Проверка на прерывание ...» 4 секунды позже, если XCTest опоздал или это произошло из-за того, что приложение не отвечает.Может ли кто-нибудь помочь объяснить эти события, чтобы определить, вызвана ли задержка приложением или XCTest?Спасибо