Документация
ОС Аврора 5.2.0

Настройка эмулятора для запуска UI-автотестов

UI-автотесты можно запускать на эмуляторе начиная с версии 5.1.5.

Эмулятору должен быть выделен IP-адрес в одной подсети с хостом для подключения к виртуальной машине по стандартному порту 22, а не по 2223, как это реализовано по умолчанию после установки.

Перед настройкой эмулятора необходимо убедиться, что:

  1. Аврора SDK установлен в директорию по умолчанию ~/AuroraOS.
  2. Виртуальная машина эмулятор остановлена.
  3. В системе отсутствуют следы от установок предыдущих версий Аврора SDK.

Сначала должна быть настроена виртуальная машина, затем настроен сам эмулятор:

Настройка виртуальной машины QEMU

  1. Остановить виртуальную машину эмулятора (если запущена).

  2. Открыть конфигурационный файл эмулятора, например ~/AuroraOS/emulator/AuroraOS-5.2.0.62/emulator-setup.ini, в текстовом редакторе. В секции [ports_forwarding] добавить новое правило проброса портов для порта 8888 и сохранить изменения:

    appium\guest=8888
    appium\host=8888
    appium\protocol=tcp
    
  3. Добавить приватный ключ эмулятора в SSH-агент:

    ssh-add ~/AuroraOS/vmshare/ssh/private_keys/sdk
    

Настройка эмулятора

  1. При необходимости (актуально для автотестов) выключить отображение GUI для эмулятора:

    sfdk emulator start --headless
    
  2. В настройках режима разработчика активировать опцию Разрешить автотестирование пользовательского интерфейса. Если опция включена — то выключить и включить заново.

    Разрешить автотестирование пользовательского интерфейса

    Эта настройка нужна для поддержки автоматического UI-тестирования QT/QML приложений, запущенных в песочнице.

    Действие можно выполнить командой:

    ~/AuroraOS/bin/sfdk emulator exec -tt bash -c "sudo gdbus call --system --dest ru.omp.developermode --object-path / --method ru.omp.developermode.SetAutoTestUIEnabled false"
    ~/AuroraOS/bin/sfdk emulator exec -tt bash -c "sudo gdbus call --system --dest ru.omp.developermode --object-path / --method ru.omp.developermode.SetAutoTestUIEnabled true"
    

    Т.е. выключение опции Разрешить автотестирование пользовательского интерфейса останавливает службу qtium-bridge, а включение — запускает её.

  3. Также для удобства отладки можно включить отображение касаний:

    ~/AuroraOS/bin/sfdk emulator exec -tt bash -c "dconf write /desktop/lipstick-jolla-home/touch-tracker/enabled 'true'"
    
  4. Для вступления изменений в силу необходимо перезапустить эмулятор:

    ~/AuroraOS/bin/sfdk emulator stop; ~/AuroraOS/bin/sfdk emulator start
    
  5. После перезагрузки нужно убедиться, что служба qtium-bridge  на эмуляторе запущена и работает корректно:

    ~/AuroraOS/bin/sfdk emulator exec -tt bash -c "sudo systemctl status qtium-bridge"
    
    Служба должна быть включена и запущена. Например:
    
    ● qtium-bridge.service - qtium-bridge appium service
       Loaded: loaded (/usr/lib/systemd/system/qtium-bridge.service; enabled; vendor preset: enabled)
       Active: active (running) since Fri 2025-03-28 17:01:30 MSK; 3min 40s ago
     Main PID: 1281 (qtium-bridge)
       Memory: 1.9M
       CGroup: /system.slice/qtium-bridge.service
               └─1281 /usr/bin/qtium-bridge
    

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

Мы используем cookies для персонализации сайта и его более удобного использования. Вы можете запретить cookies в настройках браузера.

Пожалуйста ознакомьтесь с политикой использования cookies.