AirtestIDE — кроссплатформенное автоматизированное тестирование пользовательского интерфейса.
AirtestIDE — кроссплатформенное автоматизированное тестирование пользовательского интерфейса.

1. Предисловие

Автоматизированное тестирование пользовательского интерфейса, основанное на распознавании изображений, обеспечивает более эффективное и точное автоматизированное тестирование за счет интеллектуальной идентификации и сравнения элементов изображения в пользовательском интерфейсе, а также может эффективно реагировать на проблемы, вызванные изменениями интерфейса.

В этой статье будет представлен кроссплатформенный инструмент автоматизации тестирования пользовательского интерфейса на основе распознавания изображений — AirtestIDE.

2. Введение

AirtestIDE — это кроссплатформенный редактор тестов автоматизации пользовательского интерфейса со встроенными соответствующими подключаемыми функциями для Airtest и Poco. Его можно использовать для быстрого и легкого написания кода Airtest и Poco.

Airtest — это кроссплатформенная среда автоматизации тестирования пользовательского интерфейса на основе распознавания изображений, подходящая для игр и приложений. Поддерживаемые платформы включают Windows, Android и iOS.

Poco — это среда автоматизированного тестирования, основанная на распознавании элементов управления пользовательского интерфейса. В настоящее время она поддерживает собственные платформы Android, iOS, Unity3D, cocos2dx, UE4 и Egret и другие платформы. Ее также можно использовать путем подключения poco-sdk к другим механизмам.

Возможности AirtestIDE:

  • Тестирование игр: платформа автоматизации по распознаванию изображенийиUIТехнология получения контроля,Делает тестирование игр простым и быстрым。Работает с любым игровым движкомиприложение、Мультиплатформенная поддержка、Простота в использовании.
  • Собственные приложения Android: в процессе тестирования собственных приложений Android Airtest может сыграть жизненно важную роль, подключи и работай.
  • Приложения для Windows: поддержка приложений для Windows,Напишите один раз,Кроссплатформенная работа.
  • Поддержка iOS: Airtest поддерживает удобное и быстрое тестирование iOS, которое можно использовать для быстрого получения местоположения и информации о собственных элементах на страницах устройств iOS.
  • Плагин Selenium: на основе Chrome Devtools Протокол Протокол,Автоматически записывать и генерировать SeleniumСкрипт,Точно позиционируйте и манипулируйте элементами интерфейса.

Официальный адрес сайта:

https://airtest.netease.com/

3. Приступайте к работе быстро

В AirtestIDE предусмотрено окно для использования Selenium, а используемый фреймворк — airtest-selenium framework. airtest-selenium — это уровень инкапсуляции библиотеки Python Selenium. Он добавляет некоторые интерфейсы распознавания изображений, а также может генерировать отчеты о тестировании веб-версии.

На примере веб-автоматизации загрузите и установите AirtestIDE.

Регистрация аккаунта и вход в систему.

Откройте редактор AirtestIDE.

По умолчанию IDE не отображает окно Selenium, его нужно открыть.

Общий API, предоставляемый окном Selenium.

  • start_web: driver.get(""), откройте указанный URL.
  • касание: driver.find_element_by_xpath("").click(), стандартный щелчок элемента Selenium.
  • driver.airtest_touch: driver.airtest_touch(Template(......)), щелчок по изображению, инкапсулированный airtest-selenium.
  • текст: driver.find_element_by_id("").send_keys(""), стандартная операция ввода элемента Selenium.
  • Assert: driver.assert_exist("", "xpath", "Пожалуйста, заполните контрольные точки."), стандартное утверждение существования элемента Selenium.
  • driver.assert_template: То есть driver.assert_template(Template(...), «Пожалуйста, заполните тестовые точки»), в изображении есть утверждение, инкапсулированное airtest-selenium.
  • снимок: driver.snapshot(), операция создания скриншота страницы, инкапсулированная airtest-selenium.
  • previous_tab: driver.switch_to_previous_tab(), операция перехода на предыдущую вкладку, инкапсулированная airtest-selnium.
  • new_tab: driver.switch_to_new_tab(), операция переключения на вновь открытую вкладку, инкапсулированную airtest-selenium.
  • назад: driver.back(), стандартная операция возврата страницы Selenium.
  • вперед: driver.forward(), стандартная операция пересылки страницы Selenium.

Нажмите кнопку «Земля-подобно» и вставьте код инициализации.

Параметры-Настройки, задайте путь браузера Chrome для раздела Selenium.

Далее можно написать и записать скрипт на основе исходного кода.

Нажмите кнопку, похожую на глобус, чтобы открыть браузер, введите URL-адрес для тестирования, и сценарий вставит код для открытия тестового URL-адреса.

Поиск элемента помогает нам понять подробную информацию об элементе. После нажатия создается сценарий позиционирования элемента.

Запись скрипта: записывайте операции на странице и генерируйте код скрипта.

API предоставляет две функции распознавания изображений: щелчки по распознаванию изображений и утверждения распознавания изображений.

Чтобы завершить автоматизированный сценарий, необходимо войти на веб-сайт покупок, добавить товары в корзину, проверить, были ли товары добавлены в корзину, выйти из системы и закрыть браузер.

После завершения выполнения сценария автоматизации просмотрите отчет о тестировании.

Отчет об испытаниях.

Все 4 добавленных утверждения оказались успешными.

boy illustration
Углубленный анализ переполнения памяти CUDA: OutOfMemoryError: CUDA не хватает памяти. Попыталась выделить 3,21 Ги Б (GPU 0; всего 8,00 Ги Б).
boy illustration
[Решено] ошибка установки conda. Среда решения: не удалось выполнить первоначальное зависание. Повторная попытка с помощью файла (графическое руководство).
boy illustration
Прочитайте нейросетевую модель Трансформера в одной статье
boy illustration
.ART Теплые зимние предложения уже открыты
boy illustration
Сравнительная таблица описания кодов ошибок Amap
boy illustration
Уведомление о последних правилах Points Mall в декабре 2022 года.
boy illustration
Даже новички могут быстро приступить к работе с легким сервером приложений.
boy illustration
Взгляд на RSAC 2024|Защита конфиденциальности в эпоху больших моделей
boy illustration
Вы используете ИИ каждый день и до сих пор не знаете, как ИИ дает обратную связь? Одна статья для понимания реализации в коде Python общих функций потерь генеративных моделей + анализ принципов расчета.
boy illustration
Используйте (внутренний) почтовый ящик для образовательных учреждений, чтобы использовать Microsoft Family Bucket (1T дискового пространства на одном диске и версию Office 365 для образовательных учреждений)
boy illustration
Руководство по началу работы с оперативным проектом (7) Практическое сочетание оперативного письма — оперативного письма на основе интеллектуальной системы вопросов и ответов службы поддержки клиентов
boy illustration
[docker] Версия сервера «Чтение 3» — создайте свою собственную программу чтения веб-текста
boy illustration
Обзор Cloud-init и этапы создания в рамках PVE
boy illustration
Корпоративные пользователи используют пакет регистрационных ресурсов для регистрации ICP для веб-сайта и активации оплаты WeChat H5 (с кодом платежного узла версии API V3)
boy illustration
Подробное объяснение таких показателей производительности с высоким уровнем параллелизма, как QPS, TPS, RT и пропускная способность.
boy illustration
Удачи в конкурсе Python Essay Challenge, станьте первым, кто испытает новую функцию сообщества [Запускать блоки кода онлайн] и выиграйте множество изысканных подарков!
boy illustration
[Техническая посадка травы] Кровавая рвота и отделка позволяют вам необычным образом ощипывать гусиные перья! Не распространяйте информацию! ! !
boy illustration
[Официальное ограниченное по времени мероприятие] Сейчас ноябрь, напишите и получите приз
boy illustration
Прочтите это в одной статье: Учебник для няни по созданию сервера Huanshou Parlu на базе CVM-сервера.
boy illustration
Cloud Native | Что такое CRD (настраиваемые определения ресурсов) в K8s?
boy illustration
Как использовать Cloudflare CDN для настройки узла (CF самостоятельно выбирает IP) Гонконг, Китай/Азия узел/сводка и рекомендации внутреннего высокоскоростного IP-сегмента
boy illustration
Дополнительные правила вознаграждения амбассадоров акции в марте 2023 г.
boy illustration
Можно ли открыть частный сервер Phantom Beast Palu одним щелчком мыши? Супер простой урок для начинающих! (Прилагается метод обновления сервера)
boy illustration
[Играйте с Phantom Beast Palu] Обновите игровой сервер Phantom Beast Pallu одним щелчком мыши
boy illustration
Maotouhu делится: последний доступный внутри страны адрес склада исходного образа Docker 2024 года (обновлено 1 декабря)
boy illustration
Кодирование Base64 в MultipartFile
boy illustration
5 точек расширения SpringBoot, супер практично!
boy illustration
Глубокое понимание сопоставления индексов Elasticsearch.
boy illustration
15 рекомендуемых платформ разработки с нулевым кодом корпоративного уровня. Всегда найдется та, которая вам понравится.
boy illustration
Аннотация EasyExcel позволяет экспортировать с сохранением двух десятичных знаков.