Аппиум локальное тестирование
Я хотел бы запускать тесты локальных серверов на реальных устройствах с помощью 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.