У меня проблемы с выполнением ключей отправки в конкретном поле EditText
. Я пробовал грязный xpath и id, но все равно он не входит в текстовое поле. Однако я чувствую, что нет проблем с поиском элемента. Однако он не щелкает в элемент.
Итак, что происходит в приложении, так это то, что когда пользователь выбирает страницу, он открывает веб-представление, и поле EditText
находится в этом WebView
.
Вот грязный xpath, который я получил от инспектора аппиума:
/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.ScrollView/android.view.ViewGroup/android.view.ViewGroup/android.support.v4.view.ViewPager/android.view.ViewGroup/android.widget.EditText[1]
Вот хороший идентификатор:
@FindBy(id = "test_number")
public WebElement testNumberTextField;
Я пытался использовать find by xpath, используя грязный xpath.
Вот мой метод, в котором я пытаюсь ввести текст. По закомментированному коду видно, что я пробовал и другие вещи, чтобы заставить его работать, но все равно безуспешно:
public void enterTestNumber(){
//List<WebElement> menu22 =drive.getDriver().findElements(By.className("android.widget.EditText"));
// menu22.get(1).sendKeys(randomStringGeneratorMethods.randomAlphaNumericString(7));
testPage.testNumberTextField.sendKeys(randomStringGeneratorMethods.randomAlphaNumericString(7));
//js.executeScript("document.getElementById('"+testPage.testNumberTextField+").value='"+randomStringGeneratorMethods.randomAlphaNumericString(7)+"';");
}
Генератор случайных чисел - это просто генератор случайных строк, который выглядит так:
public String randomAlphaNumericString(int characterLength) {
return RandomStringUtils.randomAlphanumeric(characterLength);
}
Кто-нибудь знает, как заставить это работать, чтобы он мог вводить текст в это поле EditText
?