В этой статье для тестирования автоматизации пользовательского интерфейса используется только Android-клиент мобильной игры QQ Speed.
Попробуйте метод 1 – используйте Espresso, используйте UI Automator для получения атрибутов элемента.
Открыть приложение
В «Интерфейсе пользовательского соглашения и политики конфиденциальности игры Tencent» и в интерфейсе запроса разрешения вы можете использовать UI Automator для получения атрибутов элемента.
(1) Пользовательское соглашение и Политика конфиденциальности заголовок:
текст Пользовательского соглашения Tencent Game и Политики конфиденциальности идентификатор com.tencent.tmgp.speedmobile:id/msdk_policy_title_tv
Кнопка согласия:
id com.tencent.tmgp.speedmobile:id/msdk_policy_confirm_btn
(2) Запрос разрешения заголовок: текстовый запрос на разрешение
id com.tencent.tmgp.speedmobile:id/msdk_permission_title_tv
Кнопка ОК:
id com.tencent.tmgp.speedmobile:id/msdk_permission_confirm_btn
Следующий интерфейс обновления приложения, интерфейс загрузки приложения и интерфейс входа в систему.
При использовании автоматизатора пользовательского интерфейса невозможно щелкнуть элемент страницы (после инкапсуляции выбранный модуль является относительно большим), атрибут текста не может быть получен, а атрибут id равномерно отображается как unitySurfaceView.
Поскольку Unity используется для инкапсуляции, последующие интерфейсы пользовательского соглашения, интерфейса политики конфиденциальности и интерфейса запроса разрешения не могут использовать UI Automator для позиционирования элементов.
Попробуйте метод 2: используйте Airtest.
Airtest — это инструмент автоматизации тестирования пользовательского интерфейса, созданный NetEase на основе распознавания изображений и распознавания элементов управления poco. Он больше подходит для игр.
Официальный сайт скачатьhttp://airtest.netease.com/, После этого в Win10 AirtestIDE не открывается
Запускаю в режиме совместимости, все равно не открывается.
Вместо этого используйте другой метод
Попробуйте метод 3 — используйте GAutomator.
Благодаря представлению GAutomator мы узнали, что GAutomator необходимо встроить свой SDK в код игры и участвовать в исследованиях и разработках проекта.
Попробуйте метод 4 — используйте AltUnity.
Согласно официальным инструкциям AltUnity, AltUnity также необходимо подключить пакет AltUnity Tester к исходному коду игры и участвовать в исследованиях и разработках проекта.
Попробуйте метод 5: используйте встроенное решение Unity для автоматизации тестирования пользовательского интерфейса.
Согласно документации, использование собственного решения Unity для автоматизации тестирования пользовательского интерфейса также требует доступа к исходному коду проекта.
Попробуйте метод 6 — идеальное решение: машинное зрение + автоматизация пользовательского интерфейса.
Это универсальное решение, оно должно быть осуществимо и не ограничивается платформой Android. Как это сделать конкретно нужно изучить.
Кроме того, если соответствующий ИИ уже существует в игре, его можно использовать в полной мере.
Подводя итог, поскольку движком разработки, используемым в Android-пакете мобильной игры QQ Speed, является Unity.
Использование Espresso возможно только в первых двух интерфейсах, но не в последующих.
Воздушное тестирование невозможно
Более осуществимое решение:
GAutomator, AltUnity, собственное решение Unity для автоматизации пользовательского интерфейса, машинное зрение
Среди них GAutomator, AltUnity и собственные решения Unity для автоматизации пользовательского интерфейса — все они должны участвовать в разработке проекта и использовать исходный код игры.
Использование машинного зрения для автоматического тестирования пользовательского интерфейса более универсально и может потребовать больше усилий на ранней стадии.