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

Фотография

Помогите новичку!

selenium

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

#1 slavakuharenkov

slavakuharenkov

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

  • Members
  • Pip
  • 12 сообщений
  • ФИО:Кухаренков Ярослав

Отправлено 25 февраля 2016 - 20:10

Вот есть форма регистрации на сайте http://app.itsquiz.c...tinue=/quizwall

Как произвести клик по кнопке Войти в рекордере?

записывает вот такой локатор css=form.LoginForm > div.user-actions > div.RaisedButton > div > button[type="button"]

но он не срабатывает

Код кнопки:

<button data-reactid=".0.0.1.0.0.1.0.0.3.0.2.$1.0.2.0.0.0" type="button" tabindex="0" style="border:10px;background:none;box-sizing:border-box;display:inline-block;font:inherit;font-family:Roboto, sans-serif;tap-highlight-color:rgba(0, 0, 0, 0);cursor:pointer;text-decoration:none;outline:none;transform:translate3d(0, 0, 0);position:relative;height:100%;width:100%;padding:0;overflow:hidden;border-radius:2px;transition:all 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;background-color:#ff4081;-moz-appearance:button;"><div data-reactid=".0.0.1.0.0.1.0.0.3.0.2.$1.0.2.0.0.0.0"><div data-reactid=".0.0.1.0.0.1.0.0.3.0.2.$1.0.2.0.0.0.0.1" style="transition: all 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms; top: 0px;"><span data-reactid=".0.0.1.0.0.1.0.0.3.0.2.$1.0.2.0.0.0.0.1.0" style="position:relative;opacity:1;font-size:14px;letter-spacing:0;text-transform:uppercase;font-weight:500;margin:0;padding-left:16px;padding-right:16px;line-height:36px;color:#ffffff;-moz-user-select:none;">Войти</span></div></div></button>

  • 0

#2 Lzk

Lzk

    Специалист

  • Members
  • PipPipPipPipPip
  • 504 сообщений
  • ФИО:Олег
  • Город:Мск

Отправлено 25 февраля 2016 - 22:02

Xpath
//button[text()='Войти']
  • 0

#3 user12

user12

    Специалист

  • Members
  • PipPipPipPipPip
  • 894 сообщений
  • ФИО:Виктор
  • Город:Минск


Отправлено 26 февраля 2016 - 07:33

//div[@class='email-body']//span[text()='Войти']

  • 0

#4 slavakuharenkov

slavakuharenkov

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

  • Members
  • Pip
  • 12 сообщений
  • ФИО:Кухаренков Ярослав

Отправлено 26 февраля 2016 - 08:52

Xpath
//button[text()='Войти']

 

//div[@class='email-body']//span[text()='Войти']

Язык может быть англ,укр,ру тогда и кнопка будет по разному называться. Так что так не прокатит


  • 0

#5 slavakuharenkov

slavakuharenkov

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

  • Members
  • Pip
  • 12 сообщений
  • ФИО:Кухаренков Ярослав

Отправлено 26 февраля 2016 - 08:56

 

Xpath
//button[text()='Войти']

 

//div[@class='email-body']//span[text()='Войти']

Язык может быть англ,укр,ру тогда и кнопка будет по разному называться. Так что так не прокатит

 

Да и что-то не срабатывают они. Вот я сделал локатор //div[@class="RaisedButton"]//button по нему находит кнопку, но после клика стирает логин и пароль и говорит, что не верный формат, хотя все даные правильные


  • 0

#6 BadMF

BadMF

    Специалист

  • Members
  • PipPipPipPipPip
  • 809 сообщений
  • ФИО:Dmitry Petrov

Отправлено 26 февраля 2016 - 09:00

 

Xpath
//button[text()='Войти']

 

//div[@class='email-body']//span[text()='Войти']

Язык может быть англ,укр,ру тогда и кнопка будет по разному называться. Так что так не прокатит

 

 

а сделать:

try:
 //div[@class='email-body']//span[text()='Войти']
except NoSuchElemnt:
 try:
  //div[@class='email-body']//span[text()='Войтi']
 except NoSuchElemnt:
  try:
   //div[@class='email-body']//span[text()='ENTER']
  except NoSuchElemnt:
   raise Exception
return True

Но вообще, если говорить о тестировании нескольких языков, то необходимо разделять переводы и код.


  • 0

#7 slavakuharenkov

slavakuharenkov

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

  • Members
  • Pip
  • 12 сообщений
  • ФИО:Кухаренков Ярослав

Отправлено 26 февраля 2016 - 09:07

 

 

Xpath
//button[text()='Войти']

 

//div[@class='email-body']//span[text()='Войти']

Язык может быть англ,укр,ру тогда и кнопка будет по разному называться. Так что так не прокатит

 

 

а сделать:

try:
 //div[@class='email-body']//span[text()='Войти']
except NoSuchElemnt:
 try:
  //div[@class='email-body']//span[text()='Войтi']
 except NoSuchElemnt:
  try:
   //div[@class='email-body']//span[text()='ENTER']
  except NoSuchElemnt:
   raise Exception
return True

Но вообще, если говорить о тестировании нескольких языков, то необходимо разделять переводы и код.

 

Да мне в рекордере надо это сделать. А этот код это через Эклипс?


  • 0

#8 BadMF

BadMF

    Специалист

  • Members
  • PipPipPipPipPip
  • 809 сообщений
  • ФИО:Dmitry Petrov

Отправлено 26 февраля 2016 - 09:09

 


 

Да мне в рекордере надо это сделать. А этот код это через Эклипс?

 

 

Это абстрактный код с синтаксисом питона, я просто как пример написал. Извиняюсь, не сразу понял что это про IDE. Как делать перебор вариантов в IDE я не знаю.


  • 0

#9 DennisM

DennisM

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

  • Members
  • Pip
  • 55 сообщений
  • ФИО:Dennis M
  • Город:Ralegh NC, USA

Отправлено 29 февраля 2016 - 14:34

//button/div/span[text() = 'Войти' or text() = 'Войтi' or text()='ENTER']

 

по вкусу добавь еще "or text()='bla-bla-Language'"  :)

 

проверил страницу. Там уже новые слова.

 

//button/div/span[text() = 'Войти' or text() = 'Увійти' or text()='Log In']

 

и страница кривая. Эти кнопки ХЗ где и не видны... Но XPath работает. ;)


  • 0



Темы с аналогичным тегами selenium

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

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