Selenium Python Tutorial com WebDriver (Exemplo)

โšก Resumo Inteligente

Selenium com as Python combina a biblioteca de automaรงรฃo WebDriver com Python Sintaxe concisa para testar aplicaรงรตes web em toda a plataforma. Firefox, Chrome e Internet Explorer. Este guia passo a passo configura PyDev in Eclipse, escreve scripts de login e explica por que as equipes preferem Python Acima de Java.

  • ๐Ÿ Python Vantagem: Less A sintaxe verbosa torna Selenium Scripts mais fรกceis de ler e manter.
  • ๐ŸŒ WebDriver: Envia comandos padrรฃo para FirefoxChrome e IE, independentemente do design do navegador.
  • ๐Ÿงฉ PyDev Configuraรงรฃo: Instale o PyDev plugin em Eclipse e definir o Python intรฉrprete.
  • ๐Ÿ“ Scripts de login: Localize os campos por ID, envie as chaves e submeta o formulรกrio automaticamente.
  • โœ… Declaraรงรฃo do tรญtulo: O WebDriverWait com assert verifica o tรญtulo da pรกgina apรณs o login.
  • ๐Ÿค– Assistรชncia de IA: As ferramentas de IA geram localizadores e Selenium Python Scripts a partir de prompts simples.

Selenium Python Tutorial com WebDriver

Selenium com as Python

Selenium suporta Python e assim pode ser utilizado como Selenium WebDriver com Python para testes.

  • Python ร‰ fรกcil em comparaรงรฃo com outras linguagens de programaรงรฃo, possuindo uma sintaxe muito menos verbosa.
  • O Python As APIs permitem que vocรช se conecte ao navegador por meio de Selenium.
  • Selenium envia o padrรฃo Python comandos para diferentes navegadores, apesar da variaรงรฃo em seus designs.

Vocรช pode correr Selenium com as Python scripts para FirefoxChrome, IE, etc., em diferentes sistemas operacionais.

O que รฉ a Python?

Python รฉ uma linguagem de script orientada a objetos de alto nรญvel. Ele foi projetado de maneira fรกcil de usar. Python Utiliza palavras-chave simples em inglรชs, que sรฃo fรกceis de interpretar. Possui menos complicaรงรตes sintรกticas do que qualquer outra. linguagem de programaรงรฃo.

Veja alguns dos exemplos na tabela abaixo.

Palavra-chave Significado Uso
elif Senรฃo se Senรฃo se
outro Outro se: X; Elif: Y; mais: J
exceto Faรงa isso se ocorrer uma exceรงรฃo. exceto ValueError, a: imprima um
exec Execute a string como Python exec 'imprime โ€œolรก mundo!โ€'

O que รฉ a Selenium?

Selenium ร‰ uma ferramenta para testar sua aplicaรงรฃo web. Vocรช pode fazer isso de vรกrias maneiras, por exemplo:

  • Permita que ele toque nos botรตes.
  • Insira o conteรบdo nos formulรกrios.
  • Dรช uma olhada no seu site para verificar se estรก tudo โ€œOKโ€ e assim por diante.

Como instalar e configurar PyDev in Eclipse

PyDev รฉ o Python ambiente de desenvolvimento para Eclipse.

Passo 1) Acesse Eclipse Mercado. Ajuda > Instalar novo software.

Instalar e configurar PyDev in Eclipse

O prรณximo passo รฉ instalar o โ€œpydev IDEโ€ para Eclipse.

Passo 2) Nesta etapa:

  1. Procure por โ€œhttp://pydev.org/updatesโ€ em Trabalhar com e, em seguida,
  2. Selecione todos os itens listados e clique em Avanรงar duas vezes.
  3. Aceite o Contrato de Licenรงa e clique em Concluir.

Instalar e configurar PyDev in Eclipse

Passo 3) Vocรช poderรก encontrar um aviso de seguranรงa. Clique em "Instalar mesmo assim".

Instalar e configurar PyDev in Eclipse

Passo 4) Defina as preferรชncias para que vocรช possa usar Python Conforme a necessidade do projeto. Vรก para Janela > Preferรชncias > PyDev > Intรฉrprete > Python Intรฉrprete.

Instalar e configurar PyDev in Eclipse

Definir o padrรฃo Python Intรฉrprete, exatamente como vocรช configurou o Java compilador para execuรงรฃo Java Para alterar o nome do interpretador, clique no botรฃo Procurar executรกvel python/pypy.

Instalar e configurar PyDev in Eclipse

Passo 5) Nesta etapa, forneรงa o โ€œnome do intรฉrpreteโ€ e o caminho do arquivo โ€œexeโ€ do Python.

  1. Clique em 'Navegar' e encontre python.exe onde vocรช instalou Python.
  2. Clique no botรฃo 'OK'.
  3. Selecione todas as pastas e clique em OK.
  4. Clique em โ€œAplicar e Fecharโ€.

Instalar e configurar PyDev in Eclipse

Passo 6) Crie um novo projeto em PythonNesta etapa:

  1. Botรฃo direito do mouse PyDev Explorador de Pacotes > Novo.
  2. Selecione a opรงรฃo outros.

Instalar e configurar PyDev in Eclipse

  1. Selecione "PyDev > PyDev Projeto".
  2. Pressione o botรฃo 'Prรณximo'.

Instalar e configurar PyDev in Eclipse

  1. Dรช um nome ao seu projeto.
  2. Clique em "Concluir".

Instalar e configurar PyDev in Eclipse

Vocรช pode ver o novo Python (PyDev) o projeto รฉ criado.

Passo 7) Apรณs criar o 'PyDev Project', vocรช criarรก um novo Python pacote.

  1. Clique com o botรฃo direito em Projeto > Novo > PyDev Pacote.
  2. Dรช um nome ao seu pacote e clique em Concluir.

Instalar e configurar PyDev in Eclipse

Instalar e configurar PyDev in Eclipse

Passo 8) Como vocรช pode ver na captura de tela abaixo, um novo pacote foi criado.

Instalar e configurar PyDev in Eclipse

Em seguida, crie um PyDev mรณdulo. O mรณdulo contรฉm Python Arquivos para inicializaรงรฃo, cujas funรงรตes podem ser importadas para outro mรณdulo, evitando a reescrita do programa.

Passo 9) Crie um novo PyDev mรณdulo. Clique com o botรฃo direito no pacote > Novo > PyDev mรณdulo.

Instalar e configurar PyDev in Eclipse

Dรช um nome ao seu mรณdulo e clique em โ€œConcluirโ€.

Instalar e configurar PyDev in Eclipse

Selecione "Modelo vazio" e clique em "OK".

Instalar e configurar PyDev in Eclipse

Passo 10) Escreva seu cรณdigo para Selenium com as Python como mostrado abaixo.

Instalar e configurar PyDev in Eclipse

Como criar scripts de teste em Selenium com as Python

Neste curso Selenium WebDriver com Python Por exemplo, automatizamos a โ€œpรกgina de login do Facebookโ€ usando o Firefox motorista.

Selenium com as Python Exemplo 1: Faรงa login no Facebook

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
user_name = "YOUR EMAILID"
password = "YOUR PASSWORD"
driver = webdriver.Firefox()
driver.get("https://www.facebook.com")
element = driver.find_element_by_id("email")
element.send_keys(user_name)
element = driver.find_element_by_id("pass")
element.send_keys(password)
element.send_keys(Keys.RETURN)
element.close()

Instantรขneo do Code

Crie scripts de teste em Selenium com as Python

Explicaรงรฃo do cรณdigo

  • Code linha 1: No mรณdulo Selenium, importe o webdriver.
  • Code linha 2: No mรณdulo Selenium, importe Keys.
  • Code linha 3: `user_name` รฉ uma variรกvel usada para armazenar o valor do nome de usuรกrio.
  • Code linha 4: A variรกvel โ€œsenhaโ€ serรก usada para armazenar o valor da senha.
  • Code linha 5: Inicializar โ€œFirefoxโ€ fazendo dele um objeto.
  • Code linha 6: O mรฉtodo โ€œdriver.getโ€ navega atรฉ a pรกgina fornecida pelo URLO WebDriver aguarda atรฉ que a pรกgina esteja totalmente carregada antes de retornar o controle para o seu script.
  • Code linha 7: Localize o elemento da caixa de texto onde o "e-mail" deve ser digitado.
  • Code linha 8: Envie os valores para a seรงรฃo de e-mail.
  • Code linha 9: O mesmo vale para a senha.
  • Code linha 10: Envie os valores para a seรงรฃo de senha.
  • Code linha 11: element.send_keys(Keys.RETURN) pressiona enter depois que os valores sรฃo inseridos.
  • Code linha 12: Fechar.

Saรญda: Os valores do nome de usuรกrio โ€œguru99โ€ e da senha sรฃo inseridos.

Crie scripts de teste em Selenium com as Python

A pรกgina do Facebook farรก login com o e-mail e a senha. Pรกgina aberta (veja a imagem abaixo).

Crie scripts de teste em Selenium com as Python

Selenium com as Python Exemplo 2: Faรงa login no Facebook e verifique o tรญtulo

Neste exemplo, vamos abrir uma pรกgina de login, preencher os campos obrigatรณrios โ€œnome de usuรกrioโ€ e โ€œsenhaโ€ e verificar o tรญtulo da pรกgina.

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
# Step 1) Open Firefox
browser = webdriver.Firefox()
# Step 2) Navigate to Facebook
browser.get("http://www.facebook.com")
# Step 3) Search & Enter the Email or Phone field & Enter Password
username = browser.find_element_by_id("email")
password = browser.find_element_by_id("pass")
submit   = browser.find_element_by_id("loginbutton")
username.send_keys("YOUR EMAILID")
password.send_keys("YOUR PASSWORD")
# Step 4) Click Login
submit.click()
wait = WebDriverWait( browser, 5 )
page_title = browser.title
assert page_title == "Facebook"

Instantรขneo do cรณdigo

Crie scripts de teste em Selenium com as Python

Explicaรงรฃo do cรณdigo:

  • Code linhas 1-2: Importar pacotes do Selenium.
  • Code linha 4: Inicializar Firefox criando um objeto.
  • Code linha 6: Acesse a pรกgina de login (Facebook).
  • Code linhas 8-10: Exiba os campos para nome de usuรกrio, senha e o botรฃo de envio.
  • Code linhas 11-12: Insira os dados nos campos de nome de usuรกrio e senha.
  • Code linha 14: Clique no botรฃo "Enviar".
  • Code linha 15: Crie um objeto de espera com um tempo limite de 5 segundos.
  • Code linha 16: Capture o tรญtulo do objeto "navegador".
  • Code linha 17: Teste a sequรชncia de tรญtulo capturada com โ€œFacebookโ€.

Por que escolher Python Acima de Java in Selenium

Alguns pontos que favorecem Python Acima de Java para usar com Selenium como:

  1. Java programas tendem a ser executados mais lentamente em comparaรงรฃo com Python programas.
  2. Java usa colchetes tradicionais para iniciar e finalizar blocos, enquanto Python usa recuo.
  3. Java emprega tipos estรกticosping, enquanto Python รฉ digitado dinamicamente.
  4. Python รฉ mais simples e compacto em comparaรงรฃo com Java.

Perguntas Frequentes

Execute o comando `pip install selenium.modern`. Selenium navios com Selenium O gerenciador baixa automaticamente o driver de navegador correspondente, dispensando a necessidade de configuraรงรฃo manual do chromedriver.

WebDriver รฉ o Selenium interface que controla um navegador real, enviando comandos para Firefox, Chrome ou Edge para controlar a navegaรงรฃo, os cliques e a entrada de formulรกrios.

Selenium 4 removeu find_element_by_id. Use a classe By: from selenium.webdriver.common.by import By, then driver.find_element(By.ID, โ€œemailโ€).

A espera implรญcita consulta o DOM por um perรญodo determinado. A espera explรญcita (WebDriverWait) pausa atรฉ que uma condiรงรฃo especรญfica seja atendida. Evite misturรก-las para prevenir imprevisibilidade de tempo.

Nรฃo. PyDev in Eclipse รฉ uma opรงรฃo. Vocรช tambรฉm pode executar Selenium Python scripts em PyCharm, VS Codeou pela linha de comando.

Selenium O WebDriver oferece suporte FirefoxChrome, Edge, Safari e Internet Explorer. O mesmo Python O script os percorre por meio de troca.ping o condutor.

Sim. Assistentes de IA como o ChatGPT transformam uma descriรงรฃo de teste em linguagem simples em Selenium Python Cรณdigo, sugestรตes de localizadores e conversรฃo de chamadas antigas de find_element_by_id para a sintaxe By.

Sim. O GitHub Copilot sugere localizadores estรกveis, explica erros NoSuchElementException e recomenda esperas explรญcitas, reduzindo testes instรกveis โ€‹โ€‹em pรกginas dinรขmicas.

Resuma esta postagem com: