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

Фотография

Проверка сабмита формы


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

#1 Breetonia

Breetonia

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

  • Members
  • PipPip
  • 76 сообщений
  • ФИО:Рымаров Владислав

Отправлено 27 июня 2012 - 07:04

Ситуация следующая:

Мне нужно написать тестовый метод,проверяющий,что кнопка сабмит нажата успешно(сообщение об ошибке не выходит в браузере).
Сами действия в эклипсе я программно воспроизвел,но после редиректа на внутреннюю страницу сайта(после авторизации),тестовый метод ждет и вылетает
по таймауту,установленному имплицитными ожиданиями.Мне этого не нужно.Мне нужно,чтобы выполнение метода прекращалось сразу после успешной авторизации и выполнялся assertTrue,но как мне проверить,что вход произошел ? После submit() я сразу оказываюсь авторизованным и selenium,как я писал выше,тупит и вываливается с ошибкой.Собственно,дальнейшее тестирование не представляется возможным.
Я решил сделать так: проверить хидер Location до сабмита и после сабмита.Если они отличаются,значит,редирект успешно произошел и я оказался успешно авторизован,но в селениуме я не нашел чего-либо,предусматривающего работу с хидерами или запросами/ответами.
Я так понимаю,что это нужно реализовать на Java,но тогда придется вообще забыть про Селениум,а реализовывать всё чуть ли не с нуля или использования готовых java libraries.Так что делать ?

P.S.: Первые два видеоурока Баранцева не дали ответа на поставленный вопрос.
  • 0

#2 soleksenko2702

soleksenko2702

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

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

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

Ситуация следующая:

Мне нужно написать тестовый метод,проверяющий,что кнопка сабмит нажата успешно(сообщение об ошибке не выходит в браузере).
Сами действия в эклипсе я программно воспроизвел,но после редиректа на внутреннюю страницу сайта(после авторизации),тестовый метод ждет и вылетает
по таймауту,установленному имплицитными ожиданиями.Мне этого не нужно.Мне нужно,чтобы выполнение метода прекращалось сразу после успешной авторизации и выполнялся assertTrue,но как мне проверить,что вход произошел ? После submit() я сразу оказываюсь авторизованным и selenium,как я писал выше,тупит и вываливается с ошибкой.Собственно,дальнейшее тестирование не представляется возможным.
Я решил сделать так: проверить хидер Location до сабмита и после сабмита.Если они отличаются,значит,редирект успешно произошел и я оказался успешно авторизован,но в селениуме я не нашел чего-либо,предусматривающего работу с хидерами или запросами/ответами.
Я так понимаю,что это нужно реализовать на Java,но тогда придется вообще забыть про Селениум,а реализовывать всё чуть ли не с нуля или использования готовых java libraries.Так что делать ?

P.S.: Первые два видеоурока Баранцева не дали ответа на поставленный вопрос.


Самое первое что приходит в голову, и наверное, самое простое это предположить что после того как Вы залогинились на странице должна быть возможность вылогиниться.
Сделайте проверку именно на эту возможность (например, проверьте что есть Logout или еще что-то в этом роде).
  • 1

#3 velazkes

velazkes

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

  • Members
  • Pip
  • 34 сообщений
  • ФИО:Малявко Виктор
  • Город:Минск

Отправлено 27 июня 2012 - 10:11

Ситуация следующая:

Мне нужно написать тестовый метод,проверяющий,что кнопка сабмит нажата успешно(сообщение об ошибке не выходит в браузере).
Сами действия в эклипсе я программно воспроизвел,но после редиректа на внутреннюю страницу сайта(после авторизации),тестовый метод ждет и вылетает
по таймауту,установленному имплицитными ожиданиями.Мне этого не нужно.Мне нужно,чтобы выполнение метода прекращалось сразу после успешной авторизации и выполнялся assertTrue,но как мне проверить,что вход произошел ? После submit() я сразу оказываюсь авторизованным и selenium,как я писал выше,тупит и вываливается с ошибкой.Собственно,дальнейшее тестирование не представляется возможным.
Я решил сделать так: проверить хидер Location до сабмита и после сабмита.Если они отличаются,значит,редирект успешно произошел и я оказался успешно авторизован,но в селениуме я не нашел чего-либо,предусматривающего работу с хидерами или запросами/ответами.
Я так понимаю,что это нужно реализовать на Java,но тогда придется вообще забыть про Селениум,а реализовывать всё чуть ли не с нуля или использования готовых java libraries.Так что делать ?

P.S.: Первые два видеоурока Баранцева не дали ответа на поставленный вопрос.



Еще есть идея проверять наличие куков, отвечающих за создание сессии. т.е проверить какие куки есть до логина, и какие появляются после, при успешном логине. в итоге сравнивать их и как-то так
  • 1

#4 Breetonia

Breetonia

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

  • Members
  • PipPip
  • 76 сообщений
  • ФИО:Рымаров Владислав

Отправлено 27 июня 2012 - 11:44

Спасибо вам,ребят : )).Я уже решил проблему(надеюсь,что верно) альтернативным способом - Сравнил таитлы логин пейдж и индекс пейдж(страница после успешной авторизации) и всё заработало ).
Единственная проблема,которая остается - как адекватно выставить имплицитные ожидания(поставил 10 секунд),т.е. каждый элемент будт искаться в течение 10 секунд,а что если сервер будет перегружен и ответить только через 30 секунд ?
Вешать блок try/catch,перехватывающий ConnectionError иксепшн(или ему сопутствующий) на каждый тестовый метод ? Кстати,где можно глянуть список именно иксепшнов,чтобы гугл не долбить ? ))
  • 0


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

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