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

Фотография

Поле очищается, затем заполняется старым значением. Почему?


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

#1 aelpha

aelpha

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

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


Отправлено 27 мая 2019 - 11:01

Помогите начинающему автоматизатору)

Тест должен очистить поля ввода и написать в них новое значение. Вот такой код:

wd.findElement(By.cssSelector("[name=name]")).clear();
wd.findElement(By.cssSelector("[name=name]")).sendKeys(name);
wd.findElement(By.cssSelector("[name=surname]")).clear();
wd.findElement(By.cssSelector("[name=surname]")).sendKeys(surname);

со вторым полем всё ок, а первое - сначала очищает, затем пишет значение старое+новое. Почему?! 


  • 0

#2 Freiman

Freiman

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 591 сообщений
  • ФИО:Андрей Адеркин
  • Город:Йошкар-Ола

Отправлено 27 мая 2019 - 11:53

А в переменной name у вас что лежит?
  • 0

#3 aelpha

aelpha

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

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


Отправлено 27 мая 2019 - 12:06

В переменной name лежит новое значение. а пишет старое+name

Когда поле очищается, курсора в нём нет, а когда ставится курсор, возвращается старое значение, похоже так. Руками не воспроизводится, потому что руками при удалении курсор остаётся в поле


  • 0

#4 aelpha

aelpha

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

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


Отправлено 27 мая 2019 - 12:19

Да, если написать вот так:

wd.findElement(By.cssSelector("[name=name]")).clear();
wd.findElement(By.cssSelector("[name=name]")).click();
wd.findElement(By.cssSelector("[name=name]")).sendKeys(name);

то видно, как по клику возвращается старое значение. Откуда оно берётся вообще? После clear  оно где-то сохраняется?


  • 0

#5 Snap

Snap

    Специалист

  • Members
  • PipPipPipPipPip
  • 980 сообщений
  • ФИО:Роман
  • Город:Москва


Отправлено 27 мая 2019 - 17:53

Было похожее, когда в браузере было включено автозаполнение форм / паролей.


  • 0

#6 aelpha

aelpha

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

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


Отправлено 28 мая 2019 - 07:27

Было похожее, когда в браузере было включено автозаполнение форм / паролей.

увы. отключила автозаполнение, не помогло. и в одном же только поле! вот гадство)


  • 0

#7 Freiman

Freiman

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 591 сообщений
  • ФИО:Андрей Адеркин
  • Город:Йошкар-Ола

Отправлено 28 мая 2019 - 07:53

JavaScript-обработка висит, скорее всего. Пробовали click - clear - sendKeys?
  • 0

#8 peskar

peskar

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

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

Отправлено 19 июля 2019 - 10:52

Отвечать, конечно, поздно, но все же напишу для людей, которые возможно ищут ответ на подобный вопрос через гугл : 
есть активная бага в selenium, что когда-то иногда не срабатывает clear: https://github.com/S...ium/issues/6741

В последнем комменте там есть workaround с ActionChains, как очищать поле


  • 0


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

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