SendKeys() в веб-драйвере Selenium

Я новичок в Selenium. Я просто хочу отправить ключи в текстовое поле пользователя и отправить ключ табуляции одновременно, чтобы текстовое поле могло проверить наличие имени пользователя.

Вот код:

 driver.findElement(By.xpath("//label[text()='User Name:']/following::div/input")).sendKeys("UserName");
 driver.findElement(By.xpath("//label[text()='User Name:']/following::div/input")).sendKeys(Keys.TAB);

Но этот не работает.

Пожалуйста, помогите мне.

Ответ 1

Я сомневаюсь в Keys.TAB в методе sendKeys... если вы хотите использовать TAB, вам нужно сделать что-то вроде ниже:

Actions builder = new Actions(driver);
builder.keyDown(Keys.TAB).perform()

Ответ 2

Это однострочная команда для отправки клавиши TAB;

driver.findElement(By.id("Enter_ID")).sendKeys("\t");

Ответ 3

Попробуйте этот код:

WebElement userName = pathfinderdriver.switchTo().activeElement();
userName.sendKeys(Keys.TAB);

Ответ 4

Попробуйте использовать класс Robot в java для нажатия клавиши TAB. Используйте приведенный ниже код.

driver.findElement(By.xpath("//label[text()='User Name:']/following::div/input")).sendKeys("UserName");

Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_TAB);
robot.keyRelease(KeyEvent.VK_TAB);

Ответ 5

Попробуйте, это наверняка сработает:

driver.findElement(By.xpath("//label[text()='User Name:']/following::div/input")).sendKeys("UserName" + Keys.TAB);

Ответ 6

Я считаю, что Selenium теперь использует Key.TAB вместо Keys.TAB.

Ответ 7

Попробуйте это, а затем импортируйте пакет:

import org.openqa.selenium.Keys;

driver.findElement(By.xpath("//*[@id='username']")).sendKeys("username");

driver.findElement(By.xpath("//*[@id='username']")).sendKeys(Keys.TAB);

driver.findElement(By.xpath("//*[@id='Password']")).sendKeys("password");

Ответ 8

Простейшее решение - перейти в "Путь сборки"> "Настроить путь сборки"> "Компилятор Java", а затем выбрать "Уровень соответствия компилятора" - до последнего из 1.4 (возможно, у вас есть).

Ответ 9

List<WebElement>itemNames = wd.findElements(By.cssSelector("a strong")); 
System.out.println("No items in Catalog page: " + itemNames.size());
   for (WebElement itemName:itemNames)
    {  
       System.out.println(itemName.getText());
    }