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

Фотография

как проверить на наличие сообщения/текста об ошибке, если при запуске


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

#1 almarka

almarka

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

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

Отправлено 05 ноября 2009 - 13:50

Работаю с Selenium IDE. Пытаюсь автоматизировать следующую ситуацию.
Есть какое-то поле, при заполнении которого неадекватным значением, возникает ошибка на этой же странице в виде текста. В случае заполнения поля адекватным значением - ошибка исчезает.
Для одного поля могут быть разные ошибки. Текст ошибок всегда появляется на одном и том же месте.
Когда, записываю тест (прохожу ручками), то ошибка появляется и казалось бы есть возможность использователь VerifyTextPresent, но когда я проганяю записанный тест, то текст об неправильном заполнении поля не выскакивает и соответственно валится. Пробовала перед VerifyTextPresent ставить WaitForTextPresent - тест вообще стопится, потому как дождаться своего текста не может.
VerifyVisible, VerifyElementPresent, VerifyElementNotPresent - тож не помогли, как с использованием xpath, так и без него. Ох, и кликание на другом каком-то поле после заполнения "своего неадекватного" тож не помогло - текст ошибки все-равно не появляется в автоматическом режиме...
Текст ошибки Firebug-ом: <td id="tx_property_error" class="padding red" colspan="7">Проверьте ХХХХ </td>
Может кто-то сталкивался с такой ситуацией раньше и знает ее решение ))? Спасибо
  • 0

#2 NLord

NLord

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

  • Members
  • PipPip
  • 108 сообщений

Отправлено 05 ноября 2009 - 15:04

Работаю с Selenium IDE. Пытаюсь автоматизировать следующую ситуацию.
Есть какое-то поле, при заполнении которого неадекватным значением, возникает ошибка на этой же странице в виде текста. В случае заполнения поля адекватным значением - ошибка исчезает.
...
но когда я проганяю записанный тест, то текст об неправильном заполнении поля не выскакивает и соответственно валится. Пробовала перед VerifyTextPresent ставить WaitForTextPresent - тест вообще стопится, потому как дождаться своего текста не может.
...


Похоже, что у Вас не срабатывает событие по которому при заполнении поля вызывается валидация.

Вы значение в поле как вбиваете? Я бы предложил после type ... добавить вызов fireEvent("blur") или что-то в этом духе, возможно надо будет поэксперименировать с именем вызываемого события. Либо пообщаться с разработчиком странички и уточнить, как именно срабатывает валидация.
  • 0

#3 hachapuri

hachapuri

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

  • Members
  • Pip
  • 40 сообщений
  • ФИО:Сиробаба Александр Эдуардович

Отправлено 06 ноября 2009 - 11:42

Можно попробовать имитировать нажатие клавиши для того чтобы ошибка появилась. Т е когда еще курсор стоит в поле ввода, жмем клавишу selenium.keyPressNative(java.awt.event.KeyEvent.VK_SPACE+ "") а потом уже WaitForTextPresent
  • 0

#4 Boltick

Boltick

    Специалист

  • Members
  • PipPipPipPipPip
  • 596 сообщений
  • ФИО:Алексей
  • Город:планета Земля

Отправлено 06 ноября 2009 - 11:49

Похоже, что у Вас не срабатывает событие по которому при заполнении поля вызывается валидация.

Вы значение в поле как вбиваете? Я бы предложил после type ... добавить вызов fireEvent("blur") или что-то в этом духе, возможно надо будет поэксперименировать с именем вызываемого события. Либо пообщаться с разработчиком странички и уточнить, как именно срабатывает валидация.

Мне тоже самое пришло на ум...

Было бы не плохо увидеть тег элемента куда вы вводите текст...

Просто напросто на этот элемент могу быть подвешены разные события, типа OnBlur, OnChange, OnSubmit и т.д, которые не срабатывают, когда Селен вводит данные.
  • 0
Алексей Булат
Про Тестинг

#5 almarka

almarka

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

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

Отправлено 09 ноября 2009 - 06:56

Похоже, что у Вас не срабатывает событие по которому при заполнении поля вызывается валидация.

Вы значение в поле как вбиваете? Я бы предложил после type ... добавить вызов fireEvent("blur") или что-то в этом духе, возможно надо будет поэксперименировать с именем вызываемого события. Либо пообщаться с разработчиком странички и уточнить, как именно срабатывает валидация.

Мне тоже самое пришло на ум...

Было бы не плохо увидеть тег элемента куда вы вводите текст...

Просто напросто на этот элемент могу быть подвешены разные события, типа OnBlur, OnChange, OnSubmit и т.д, которые не срабатывают, когда Селен вводит данные.


Вот так описан элемент, в который я ввожу текст:
<input type="text" autocomplete="off" maxlength="2" onblur="validas(); if(this.value*1==0) this.value='';" onkeyup="validNumeric(this,false)" onkeydown="return numeric(event,this,false);" value="" id="floor_nr" name="floor_nr" class="bg mini40"/>
Я так понимаю, что на него таки навешаны разные события, в часности OnBlur.
Попробывала после ввода текста в поле вставить fireEvent и заработало!!! ))))
selenium.type("kitchen_square", "100");
selenium.fireEvent("kitchen_square", "blur");
СПАСИБО!!!!
  • 0


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

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