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

Фотография

WebElement.SendKeys() пишет некоторые буквы капсом


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

#1 serrg

serrg

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

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

Отправлено 28 июня 2013 - 14:48

Коллеги, кто-нибудь сталкивался с подобной проблемой?:

Есть обычное поле ввода. Отправляю в него любой текст на русском языке, например WebElement.SendKeys("любойтекст").
После выполнения этой строки в поле ввода появляется нечто подобное: ЛюБоЙтЕкСт.
С латиницей такого не происходит. Как избавиться от подобного поведения sendkeys?
  • 0

#2 Rara

Rara

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

  • Members
  • PipPip
  • 83 сообщений
  • ФИО:Кондрашов Юрий Алексеевич
  • Город:Минск, Беларусь


Отправлено 01 июля 2013 - 11:36

Как быстрое решение могу предложить вводить данные через вставку из буфера обмена.

Какие у вас версии ОС, браузера, java, WebDriver'а?
Что происходит, если выполнять код на другом компьютере, в другом браузере, с другим полем ввода?
  • 0
Я бы переписал жизнь, но Бог не дает мне исходники

#3 soleksenko2702

soleksenko2702

    Постоянный участник

  • Members
  • PipPipPip
  • 193 сообщений
  • ФИО:Олексенко Сергей

Отправлено 02 июля 2013 - 07:57

Вы пробовали в это поле вводить русский текст вручную?
  • 0

#4 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 833 сообщений


Отправлено 02 июля 2013 - 12:56

Попробуйте добавить к текстовой строчке .toLowerCase() ("любойтекст".toLowerCase())
Что получится?

Очищаете ли вы поле ввода перед вводом текста?
  • 0

#5 serrg

serrg

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

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

Отправлено 08 октября 2014 - 06:16

После миграции на firefox 32.0.3 и Webdriver 2.43.1 описанная проблема вновь возникла. Никакие танцы с бубном не решают. Вот простой код, который воспроизводит проблему:

driver.get("http://www.yandex.ru/");
driver.findElement(By.xpath("//input[@class='input__control input__input']")).sendKeys("абракадабра");

После выполнения кода в поле ввода видим "абРаКадабРа". В чем может быть проблема?


  • 0

#6 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 833 сообщений


Отправлено 08 октября 2014 - 06:36

Что у вас за OS?

Установлено ли что-то ещё на машине? может какой-нить клавиатурный монитор типа пунтосвичера?

У меня проблемы нет с такими версиями.

Попробуйте перед вводом текста, кликнуть сначала на элемент, так же будет "правильнее" в имитации действий пользователя.


  • 0

#7 serrg

serrg

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

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

Отправлено 08 октября 2014 - 07:10

У меня ubuntu 14.04. Пробовал на сервере под Debian - та же проблема. Пробовал на win - буквы нормальные. 

Клик перед вводом текста не помогает. 


  • 0

#8 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 833 сообщений


Отправлено 08 октября 2014 - 07:47

Тогда надо писать ошибку сюда https://code.google....ium/issues/list или она уже есть...

А для решения сейчас - пробуйте скопировать текст в буфер обмена и вставить из буфера в поле ввода (на форуме где-то было решение).


  • 0

#9 serrg

serrg

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

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

Отправлено 08 октября 2014 - 07:48

Для истории оставлю информацию: 

Проблема проявляется в firefox под разные версии Linux. Решается строкой кода 

firefoxProfile.setEnableNativeEvents(false)

Однако непонятно, как быть, если все же native events нужны?


  • 0

#10 serrg

serrg

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

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

Отправлено 08 октября 2014 - 08:29

Указанная проблема описана в тикетах:

https://code.google..../detail?id=3516

https://code.google..../detail?id=6836


  • 1


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

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