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

Фотография

Selenium + python очень долго отрабатывает функция send_keys()

Selenium + python

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

#1 Igor_N

Igor_N

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

  • Members
  • Pip
  • 6 сообщений
  • ФИО:Никитин И.А.

Отправлено 30 марта 2020 - 09:00

Коллеги, добрый день.

 

Пишу тесты Selenium + python + IE.

 

def init_browser():
    return webdriver.Ie("C:\IEDriverServer_x64_3.150.1\IEDriverServer.exe")
 
def lookup(browser):
    browser.get("http://....")
    user = browser.find_element_by_name("USER")
    password = browser.find_element_by_name("PASSWORD")
    user.clear()
    login = "worker"
    user.send_keys(login)
    password.clear()
    password.send_keys("worker")
    start = time.perf_counter()
    browser.find_element_by_name('CONNECT').click()
    return start
 
Код работает. Но логин и пароль вводятся по 1 букве в течении 1 минуты 12 секунд.
Как я понял библиотека парсит строку в typle и циклом проходится по всему слову и вводит по 1 букве.
Как это обойти или увеличить скорость ввода пароля?
 
Я новичок в тестировании, подскажите пожалуйста.

  • 0

#2 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 833 сообщений


Отправлено 30 марта 2020 - 09:56

Использовать другой браузер, например, Хром.


  • 0

#3 Igor_N

Igor_N

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

  • Members
  • Pip
  • 6 сообщений
  • ФИО:Никитин И.А.

Отправлено 30 марта 2020 - 10:56

Использовать другой браузер, например, Хром.

Спасибо за совет)
приложение которое я тестирую работает только с Internet explorer.
может кто сталкивался с такой проблемой и решил?


  • 0

#4 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 833 сообщений


Отправлено 30 марта 2020 - 14:09

1. Делать setValue элементу.

2. Использовать javascript чтобы заполнить поле.


  • 0

#5 sergueik

sergueik

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

  • Members
  • PipPipPip
  • 166 сообщений
  • ФИО:кузьмин сергей

Отправлено 30 марта 2020 - 14:20

@Igor_N

https://github.com/s...s/SetValue.java

  private String setValueByJs(Driver driver, WebElement element, String text) {
    return driver.executeJavaScript(
    ....
    element, text 

  • 0

#6 Igor_N

Igor_N

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

  • Members
  • Pip
  • 6 сообщений
  • ФИО:Никитин И.А.

Отправлено 30 марта 2020 - 17:00

Коллеги, решил проблему.

Не поверите как)

версию Internet Explorer надо изменить на 32 бита)
"C:\IEDriverServer_Win32_3.150.1\IEDriverServer.exe"


  • 1

#7 Snap

Snap

    Специалист

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


Отправлено 30 марта 2020 - 19:37

Коллеги, решил проблему.

Не поверите как)

версию Internet Explorer надо изменить на 32 бита)
"C:\IEDriverServer_Win32_3.150.1\IEDriverServer.exe"

Не успел посоветовать. Еще некоторые копи/паст пробуют.


  • 1


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

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