Перейти к содержимому

Практикум по тест-дизайну 2.0
онлайн, начало 20 cентября
Тестирование юзабилити (usability)
онлайн, начало 18 сентября
Школа для начинающих тестировщиков
онлайн, начало 19 сентября
Тестирование REST API
онлайн, начало 23 сентября
Фотография

Использование класса JAVA robot

JAVA robot

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 3

#1 Zoi

Zoi

    Новый участник

  • Members
  • Pip
  • 2 сообщений

Отправлено 14 Март 2019 - 18:54

 Добрый вечер!

Автоматизируя заполнение визуальной формы, столкнулась с такой проблемой, что при переходе на некоторые поля они автоматически заполняются форматом шаблона.

Вот так это выглядит: Прикрепленный файл  поле.png   583байт   0 Количество загрузок:

Курсор устанавливается после шаблона, и если передать полю необходимое значение,то ничего не выйдет, оно остается пустое .

Нагуглила что есть такой класс Robot, который имитирует нажатие кнопок клавиатуры. Попробывала забиндить кнопку Hоme, чтобы вернуть курсор в начало поля, но он осталсь на месте. Что я не так делаю? И какими еще путями можно решить эту проблему?

 

Фрагмент кода с выбором поля и имитациенй нажатия клавиши Home:

click(By.xpath("//div[3]/div/div/input"));

try {
Robot rb = new Robot();
rb.setAutoWaitForIdle(true);
rb.keyPress(KeyEvent.VK_HOME);
rb.keyRelease(KeyEvent.VK_HOME);
} catch (AWTException ex) {
System.err.println("Robot error");
}
wd.findElement(By.xpath("//div[3]/div/div/input")).clear();
wd.findElement(By.xpath("//div[3]/div/div/input")).sendKeys("1111111111");

 

 Зарание спасибо!


  • 0

#2 aleksey_p

aleksey_p

    Активный участник

  • Members
  • PipPip
  • 105 сообщений
  • ФИО:Алексей

Отправлено 15 Март 2019 - 07:59

А если не зачищать поле, то курсор в начале строки? И/или делать клик после удаления данных поля.

wd.findElement(By.xpath("//div[3]/div/div/input")).click();

 

Альтернатива, но не лучшее решение использовать js

jse.executeScript("document.getElementsByName('buttonname')[0].value='lalala'"); 


  • 0

#3 Zoi

Zoi

    Новый участник

  • Members
  • Pip
  • 2 сообщений

Отправлено 15 Март 2019 - 18:24

Наличие или отсутсвие строчки: wd.findElement(By.xpath("//div[3]/div/div/input")).clear() никак не сказывается на положение курсора.

По поводу js, подскажите как реализовать в нем поиск элемента по xpath и click по нему? 

А если не зачищать поле, то курсор в начале строки? И/или делать клик после удаления данных поля.

wd.findElement(By.xpath("//div[3]/div/div/input")).click();

 

Альтернатива, но не лучшее решение использовать js

jse.executeScript("document.getElementsByName('buttonname')[0].value='lalala'"); 


  • 0

#4 aleksey_p

aleksey_p

    Активный участник

  • Members
  • PipPip
  • 105 сообщений
  • ФИО:Алексей

Отправлено 18 Март 2019 - 04:41

 

Наличие или отсутсвие строчки: wd.findElement(By.xpath("//div[3]/div/div/input")).clear() никак не сказывается на положение курсора.

По поводу js, подскажите как реализовать в нем поиск элемента по xpath и click по нему?  

 

 

Здесь больше примеров и здесь

JavascriptExecutor jse = (JavascriptExecutor) driver;

WebElement dateFrom = driver.findElement(By.xpath(("//div[3]/div/div/input");
dateFrom.click();
dateFrom.clear();
jse.executeScript("arguments[0].value='" + "blabla" + "';", dateFrom); //передаем текст blabla


  • 0


Инструменты тестировщика: Командная строка
онлайн
Практикум по тест-дизайну 2.0
онлайн
Программирование на Phyton для тестировщиков
онлайн
Тестирование производительности (JMeter)
онлайн




Темы с аналогичным тегами JAVA, robot

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных

Яндекс.Метрика
Реклама на портале