Я пытаюсь настроить автоматические юнит-тесты для приложения iPhone. Я использую UIWebView и мне нужно имитировать нажатия на разные ссылки. Я пытался сделать это с помощью JavaScript , но он не дает такой же результат, как когда я вручную нажимаю на ссылки. Основная проблема связана со ссылками, для которых установлено свойство target
.
Когда вы вручную нажимаете на стандартную всплывающую ссылку (например, <a href="http://example.com" target="_blank">
), UIWebView игнорирует событие щелчка и не перемещается ни к чему. Если затем попытаться автоматически щелкнуть эту же ссылку с помощью метода JavaScript dispatchEvent()
, UIWebView полностью проигнорирует атрибут target
и откроет ссылку в обычном режиме на текущей странице.
Мне нужно автоматическое модульное тестирование, чтобы получить точный такой же результат, как и при ручном нажатии на ссылку.
Я считаю, что единственный способ для правильной работы этого автоматизированного модульного теста - симуляция щелчка мышью по определенной координате x / y (то есть, где находится ссылка). Поскольку модульное тестирование будет использоваться только для внутреннего использования, частные вызовы API подойдут.
Похоже, это должно быть возможно, поскольку приложение для iPhone isimulate , похоже, делает нечто подобное.
Есть ли способ сделать это в рамках?
Я нашел похожий вопрос под названием Имитация щелчка мышью по окну вместо экрана , однако я предполагаю, что этот метод действителен только для OS X, а не для iPhone OS.