Keys Especiais em Selenium: Como Utilizar em Python

Avatar de Juliano Faccioni Juliano Faccioni
4 minutos de leitura 4 meses atrás

Quando se trata de automação de testes ou tarefas em navegadores web com Selenium em Python, muitas vezes precisamos simular ações do teclado que vão além da simples digitação de caracteres. É aí que entram as chamadas Keys Especiais em Selenium. Neste artigo, vamos explorar a utilidade dessas teclas, quais são as mais utilizadas e como aplicá-las em seus scripts de automação.

A Utilidade das Keys Especiais

As keys especiais são teclas que executam funções específicas no sistema operacional ou em aplicativos. No contexto do Selenium, elas permitem simular ações como pressionar a tecla “Enter”, “Ctrl”, “Shift”, entre outras, possibilitando interações mais complexas com a página web, como selecionar todo o texto de um campo ou navegar entre os elementos de um formulário.

Keys Especiais Mais Utilizadas

Algumas das keys especiais mais utilizadas em automação com Selenium incluem:

  • ENTER: Usada para simular a tecla Enter, frequentemente utilizada para submeter formulários.
  • ESCAPE: Usada para simular a tecla Esc, que pode ser usada para fechar diálogos ou cancelar operações.
  • TAB: Usada para navegar entre os campos de um formulário.
  • CONTROL (ou COMMAND em Mac): Usada em combinação com outras teclas para executar comandos como copiar e colar.
  • SHIFT: Usada para digitar letras maiúsculas ou em combinação com outras teclas para selecionar texto.
  • ARROW_UP, ARROW_DOWN, ARROW_LEFT, ARROW_RIGHT: Usadas para navegar entre os elementos de uma página ou dentro de um campo de texto.

Exemplos de Utilização

Para utilizar as keys especiais em Selenium, primeiro precisamos importar a classe Keys do módulo selenium.webdriver.common.keys. Veja alguns exemplos de como essas teclas podem ser aplicadas:

Simulando a Tecla Enter

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

driver = webdriver.Chrome()
driver.get("http://algumaurl.com")
elemento = driver.find_element_by_id("campo_de_texto")
elemento.send_keys("Algum texto" + Keys.ENTER)

Utilizando Ctrl+C e Ctrl+V

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

driver = webdriver.Chrome()
driver.get("http://algumaurl.com")
elemento = driver.find_element_by_id("campo_de_texto")
elemento.send_keys("Texto para copiar")

# Seleciona o texto e copia
actions = ActionChains(driver)
actions.key_down(Keys.CONTROL).send_keys('a').send_keys('c').key_up(Keys.CONTROL).perform()

# Cola o texto copiado em outro campo
outro_elemento = driver.find_element_by_id("outro_campo_de_texto")
actions = ActionChains(driver)
actions.key_down(Keys.CONTROL).send_keys('v').key_up(Keys.CONTROL).perform()

Navegando com as Setas do Teclado

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

driver = webdriver.Chrome()
driver.get("http://algumaurl.com")
elemento = driver.find_element_by_id("campo_de_texto")

# Navega entre os itens de uma lista ou menu
elemento.send_keys(Keys.ARROW_DOWN)
elemento.send_keys(Keys.ARROW_UP)

Escrevendo em Maiúsculas com Shift

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

driver = webdriver.Chrome()
driver.get("http://algumaurl.com")
elemento = driver.find_element_by_id("campo_de_texto")

# Digita texto em maiúsculas
actions = ActionChains(driver)
actions.key_down(Keys.SHIFT).send_keys('texto em maiúsculas').key_up(Keys.SHIFT).perform()

As keys especiais são ferramentas poderosas que ampliam as possibilidades de interação com a página web durante a automação com Selenium. Com elas, é possível simular quase qualquer ação que um usuário faria com o teclado, tornando seus testes e automações muito mais versáteis e eficientes. Experimente incorporá-las em seus scripts e veja como elas podem facilitar a automação de tarefas complexas.

Curso Gratuito

Curso gratuito de Python

Do zero ao primeiro projeto em apenas 2 horas

Criar conta gratuita

Comentários

Comentar
Você tem o Acesso Básico.
Libere seu acesso ao suporte dos professores Garanta seu acesso PRO para tirar todas suas dúvidas com nossa equipe.
Seja PRO