Я использую Appium (v1.15.1) для поиска по электронной почте полей пароля из "http://facebook.com" с браузером Chrome на устройстве Android, и я не могу найти электронную почту и элементы полей пароля, используя метод findElementById ('') и findElementByName (''). Я пытался найти его с помощью XPath, и он работает.
Это мой код:
public class Browse extends BaseMobile {
public static void main(String[] args) throws MalformedURLException {
AndroidDriver<AndroidElement> driver = capabilities();
driver.get("http://facebook.com");
driver.findElementById("m_login_email").sendKeys("prueba@mail.com"); // not working
driver.findElementByName("pass").sendKeys("123456789"); // not working
driver.findElementByXPath("//*[@name='login']").click();
}
}
Возможности:
public class BaseMobile {
public static AndroidDriver<AndroidElement> capabilities() throws MalformedURLException {
AndroidDriver<AndroidElement> androidDriver;
String serverUrl = "http://127.0.0.1:4723/wd/hub";
DesiredCapabilities cap = new DesiredCapabilities();
cap.setCapability(MobileCapabilityType.DEVICE_NAME, "Android device");
cap.setCapability(MobileCapabilityType.BROWSER_NAME, "Chrome");
androidDriver = new AndroidDriver<AndroidElement>(new URL(serverUrl), cap);
androidDriver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);
return androidDriver;
}
}
Ошибка:
Исключение в теме "Основная" организация. openqa.selenium.InvalidArgumentException: неверный аргумент: неверный локатор (информация о сеансе: chrome = 79.0.3945.136)
РЕДАКТИРОВАТЬ (1): Как было предложено, я напечатал страницу источника и я ' Я получаю это без проблем. Также добавлен журнал appium.
консольный журнал: System.out.println (driver.getPageSource ());
Журнал Appium