Аппиум локальное тестирование

Я хотел бы запускать тесты локальных серверов на реальных устройствах с помощью Appium. Существуют ли какие-либо возможности, которые я мог бы использовать для этого? У меня есть сервер, работающий на порту на моей локальной машине, но я хотел бы проверить его на реальном устройстве. Например, я хочу проверить http://locahost:3000/ на реальном устройстве. как этот порт может быть доступен на реальном мобильном устройстве? Я знаю, что лаборатории Browser/Stack или Sauce реализуют это, используя свои собственные локальные двоичные файлы. Можно ли это сделать с помощью appium?

Примечание: у меня есть готовая сетка с настроенными реальными устройствами, и я могу нормально запускать другие тесты.

РЕДАКТИРОВАТЬ: Просто чтобы прояснить и избежать ненужных ответов. Я ищу что-то вроде общего доступа к сети с компьютера, на котором тесты запускаются на реальных устройствах. Я хочу протестировать сервер, который размещен локально и недоступен в Интернете.

2 ответа

Для тестирования на реальном устройстве ваше устройство должно быть подключено к вашему компьютеру. Чтобы запустить тест на нескольких устройствах, необходимо запустить несколько экземпляров сервера Appium. Вы должны использовать udid устройства в DesiredCapabilities, чтобы запустить тест на определенном устройстве.

Для запуска сервера appium через порт 3000 необходимо выполнить следующую команду в терминале:

appium -a 127.0.0.1 -p 3000 --session-override

Сервер Appium должен быть установлен в вашей системе для запуска вышеуказанной команды.

Использование порта 3000 не рекомендуется, поскольку другие программы могут использовать тот же порт.

Для запуска приложения на реальном устройстве вы можете определить свои AppiumDriver и DesiredCapabilities следующим образом:

public class Test1(){
  public static AppiumDriver<MobileElement> driver;
  public static void main(String[] args){
    DesiredCapabilities caps=new DesiredCapabilities();
    caps.setCapability(MobileCapabilityType.UDID, "your device udid");
    caps.setCapability(MobileCapabilityType.DEVICE_NAME, "android device");
    caps.setCapability(MobileCapabilityType.PLATFORM_NAME, MobilePlatform.ANDROID);
    caps.setCapability("appPackage", appPackage);
    caps.setCapability("appActivity", appActivity);
    caps.setCapability(MobileCapabilityType.AUTOMATION_NAME, "uiautomator2");
    try{
      driver == new AndroidDriver<MobileElement>(new URL("http://127.0.0.1:3000/wd/hub"), caps);
    }catch(Exception e){
      e.printStackTrace();
    }
}

Пожалуйста, проверьте ссылку ниже, чтобы применить настройки прокси в Appium.

https://www.npmjs.com/package/appium-proxy

Другие вопросы по тегам