Тестирование Android - Как нажать на ресурс OpenGL в пользовательском интерфейсе? - PullRequest
0 голосов
/ 04 июля 2019

Я запускаю автоматические тесты на приложениях для Android, у которых нет исходного кода, но я знаю, что пользовательский интерфейс представляет собой 2D-интерфейс, созданный с помощью OpenGL.Проблема в том, что получение дампов экрана с помощью uiautomator, монитора или инспектора макетов не работает, как это было бы с другими действиями, там нет идентификаторов или объектов, просто пустой экран.Поэтому я запускаю щелчки ввода по позиции для навигации по пользовательскому интерфейсу, но он часто меняется, что делает код ненадежным.Я пытался использовать gapid, но я не знаю, может ли это помочь мне нажать на элементы экрана.Есть ли способ проанализировать экран и получить идентификаторы или позиции, или что-нибудь, что поможет мне автоматизировать навигацию по OpenGL-интерфейсу на Android?

1 Ответ

0 голосов
/ 15 июля 2019

OpenGL не имеет информации о геометрии, которую вы рисуете. Это может быть изображение или кнопка. Или вы можете нарисовать две кнопки в одной партии.

Чтобы решить вашу проблему, вы должны предоставить информацию об элементах управления для ваших автоматических тестов. Вы можете попытаться создать невидимые элементы управления (Button или TextView) поверх вашей сцены OpenGL (ofc только для конфигурации отладки). Таким образом, вы можете запрашивать позиции как обычно.

...