Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Winium: не работает симуляция клавиш ( send_keys )

winium
python
selenium
Теги: #<Tag:0x00007f7b63b98468> #<Tag:0x00007f7b63b982d8> #<Tag:0x00007f7b63b98120>

(Никита Быстров) #1

Winium.Desktop v.1.6.0
Selenium v.3.0.2
Python v.3.4.4

Встал вопрос об автоматизации - разбираюсь в инструментах, возникла одна странность. Проверял ее с различными примерами из статьи на хабре и из официальной документации на GitHub, а так же из описания “Selenium Python Bindings”:

from selenium import webdriver
from selenium.webdriver import ActionChains
from selenium.webdriver.common.keys import Keys
import time

driver = webdriver.Remote(
    command_executor='http://localhost:9999',
    desired_capabilities={
        "debugConnectToRunningApp": 'false',
        "app": r"C:/windows/system32/notepad.exe"
    })

time.sleep(0.5)
window = driver.find_element_by_class_name('Notepad')
text_field = window.find_element_by_class_name('Edit')

text_field.click()
text_field.send_keys('Some text{ENTER}{ENTER}')

actions = ActionChains(driver)
actions.send_keys('Another text{ENTER}')
actions.send_keys('^{o}')
actions.perform()

ActionChains(driver).key_down(Keys.CONTROL).send_keys('o').key_up(Keys.CONTROL).perform()
ActionChains(driver).key_down('\ue009').send_keys('o').key_up('\ue009').perform()

В итоге получаю вывод в окне “блокнота”:

“Some text{ENTER}{ENTER}Another text{ENTER}^{o}oo”

Симуляция нажатия “клавиш” и комбинаций не сработала.
Текст при этом выводится исправно.

Кто-нибудь сталкивался с подобным? Это баг или я упускаю что-то очевидное?

Источники примеров:


(Taras) #2

Есть WinAppDriver