t.me/atinfo_chat Telegram группа по автоматизации тестирования

sendKeys не отрабатывает, то есть вижу как он ставит, но метод getText возвращает пустую строку

sendKeys не отрабатывает, то есть вижу как он ставит(заполняет), но метод getText возвращает пустую строку.
что я понял он пишет куда то, но только не в тело инпута
код или сайт показать не могу, все с продакшна, здесь хочу спросить: было ли такое у кого нибудь еще???
работаю с textarea

меня не интересует гетТекс, мне нужно чтобы текстАрея взяла сендКейс. Потому что он дальше используется на сайте, и там он тоже экуалс("")
гетТекс я использую только для проверки

перепробовал многое, кликал на него, потом через Actions печатал на клавиатуре, тоже не помогает

Было такое.
Я получал с помощью скрипта jQuery:
$(#someid).val();

меня не интересует гетТекс, мне нужно чтобы текстАрея взяла сендКейс. Потому что он дальше используется на сайте, и там он тоже экуалс("")
гетТекс я использую только для проверки
есть идеи?

SendKeys работает правильно. Чтобы получать значение из input полей следует использовать getAttribute("value");

2 Симпатий

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

Вы же сами пишете “вижу как он ставит(заполняет)”, значит sendKeys работает.

// Заполняем текст textAreaElement.sendKeys("Text"); // Получаем текст textAreaElement.getAttribute("value");

да))
суть этого метода, заполняется текстАрея, а другая страница берет от нее текст
текстАрея через драйвер заполняется, но текст.equals("")
а если эту текстАрею заполнить в ручную, то все норм
еще раз:
мне не нужно брать от туда что то,
сендКейс отрабатывает, но не так как надо (то есть только визуально)
исходный код страницы менять не могу, доступ только к UI framework’у

Надо уметь правильно писать вопрос.
Я по тексту вопроса понял, что sendKeys() отрабатывает верно, текст вы видите. Но при попытке получить gettext() - выходит пустышка.

Опять таки - что такого секретного, что нельзя показать кусок кода, показать какие event`ы висят на textarea, возможно - показать видео?

Код теста можно посмотреть?

Интересует этот момент:

Каким образом определяется что руками “норм”, а через sendKeys уже “не норм”.

1 Симпатия

код теста очень простой
дождаться его
сендКейс,

Каким образом определяется что руками “норм”, а через sendKeys уже “не норм”.
пройдя тест в ручную, смотрю вторую страницу, если там появился текст, значит все норм

Вы делаете sendKeys(), переходите на вторую страницу - а там значение пустое?

1 Симпатия

делаю сендКейс, поля обязательное, если там пусто ругается,
после заполнения делаю сабмит
после открываю страницу где отображаются изменения (а там пусто)


гляньте плиз, там думаю заморочка в онФокусе (хотя не уверен)

Вы проверяли, как это работает автономно?

<!-- index.html -->
<textarea></textarea>
# webdriver.rb
require 'selenium-webdriver'
driver = Selenium::WebDriver.for :phantomjs
driver.get 'file:///index.html'
element = driver.first :css, 'textarea'
element.send_keys 'foo'
element.attribute 'value' # foo

Работает ли такая конструкция в вашем ЯПе?

Я надеюсь, вы не на автоматизируете сайт? :slight_smile:

есть текстАрея
пишу туда руками, сабмитаю, иду на след стр все норм
использую верДрайвер, сабмитаю (вижу как пишется текст), иду на след стр НИЧЕГО НЕТ

Попробуйте заполнить текст сенд кейсом.
Потом покиньте поле TAB`ом.
Потом делайте сабмит.
Сабмит как делаете? Кликает на кнопку или вызываете submit()?

тестировщик который так формулирует вопросы, это абзац… простите.

по делу - посмотрите в какой атрибут прописывается вводимое значение, при заполнении поля WebDriver’ом (example: в фф на вкладке DOM)

2 Симпатий

не судите строго, я новичек
в доме посылает в атрибут value

а как можно напрямую послать на этот атрибут?