Selenium Webdriver com Python: Tutorial com exemplo

Suportes de selênio Pitão e, portanto, pode ser utilizado como Selenium WebDriver com Python para teste.

  • Python é fácil em comparação com outras linguagens de programação, sendo muito menos prolixo.
  • As APIs Python permitem que você se conecte ao navegador por meio do Selenium.
  • O Selenium envia os comandos Python padrão para navegadores diferentes, apesar da variação no design de seus navegadores.

Você pode executar Selenium com scripts Python para Firefox, Chrome, IE, etc. em diferentes sistemas operacionais.

Neste tutorial do Selenium Python, você aprenderá-

O que é Python?

Python é uma linguagem de script orientada a objetos de alto nível. Ele é projetado de uma maneira amigável. Python usa palavras-chave simples em inglês, que são fáceis de interpretar. Tem menos complicações de sintaxe do que qualquer outro linguagens de programação .

Veja alguns dos exemplos na tabela abaixo.

Palavra-chaveSignificadoUso
elifSenão seSenão se
outroOutrose: X; elif: Y; mais: J
excetofaça isso, se uma exceção acontecer,exceto ValueError, a: imprimir a
execExecutar string como Pythonexec 'imprimir' olá, mundo! ''

O que é selênio?

Selenium é uma ferramenta para testar seu aplicativo da web. Você pode fazer isso de várias maneiras, por exemplo

  • Permitir que toque nos botões
  • Insira o conteúdo nas estruturas
  • Dê uma olhada em seu site para verificar se tudo está 'OK' e assim por diante.

Por que escolher Python em vez de Java no Selenium

Alguns pontos que favorecem o uso de Python em vez de Java com Selenium são,

  1. Os programas Java tendem a ser executados mais lentamente em comparação com os programas Python.
  2. Java usa chaves tradicionais para iniciar e terminar blocos, enquanto Python usa indentação.
  3. Java emprega tipagem estática, enquanto Python é tipado dinamicamente.
  4. Python é mais simples e compacto em comparação com Java.

Como instalar e configurar o PyDev no Eclipse

PyDev é o ambiente de desenvolvimento Python para Eclipse.

Passo 1) Cheguei ao Eclipse Marketplace. Ajuda> Instalar Novo Software

A próxima etapa é instalar o 'pydev IDE' para o eclipse.

Passo 2) Nesta etapa,

  1. Pesquise por 'http://pydev.org/updates' em Trabalhar com e depois
  2. Selecione todos os itens listados e clique em Avançar duas vezes
  3. Aceite o Contrato de Licença e clique em Concluir.

Etapa 3) Você pode encontrar um aviso de segurança, clique em 'Instalar assim mesmo'.

Passo 4) Agora , nesta etapa, você definirá as preferências. Com a ajuda da opção de preferência, você pode usar Python de acordo com a necessidade do projeto.

Vá para Window> Preferences> PyDev> Interpreter> Python Interpreter.

Vamos definir o interpretador Python padrão. É como se você precisasse definir o compilador java para executar um código Java. Para alterar o nome do interpretador, clique no botão Browse for python / pypy exe.

Etapa 5) Nesta etapa, forneça o 'nome do interpretador' e o caminho do arquivo 'exe' do Python.

  1. Clique em 'Procurar' e encontre python.exe onde você instalou o Python.
  2. Clique no botão 'OK'.
  3. Selecione todas as pastas e clique em OK
  4. Clique em 'Aplicar e Fechar'.

Etapa 6) Faça um novo projeto em Python. Nesta etapa,

  1. Clique com o botão direito em PyDev Package Explorer> Novo.
  2. Selecione a opção outros.

  1. Selecione 'PyDev> Projeto PyDev'.
  2. Pressione o botão 'Avançar'.

  1. Dê um nome ao seu projeto
  2. Clique em 'Concluir'.

Você pode ver que o novo projeto Python (PyDev) foi criado.

Etapa 7) Nesta etapa,

Depois de criar 'Projeto PyDev', você criará um novo pacote Python.

  1. Clique com o botão direito em Projeto> Novo> Pacote PyDev.
  2. Nomeie seu pacote e clique em Concluir.

Etapa 8) Se você vê na imagem abaixo, um novo pacote é criado.

Depois de criar um novo pacote, a próxima etapa é criar o Módulo PyDev. O módulo contém alguns arquivos Python para inicialização. Esses arquivos ou funções do módulo podem ser importados para outro módulo. Portanto, não haverá necessidade de reescrever o programa novamente.

Etapa 9) Crie um novo módulo PyDev. Clique com o botão direito em pacote> Novo> módulo PyDev.

Nomeie seu módulo e clique em 'Concluir'.

Selecione Modelo vazio e clique em 'OK'.

Etapa 10) Escreva seu código para Selenium com Python conforme mostrado abaixo

Como criar scripts de teste no Selenium com Python

Neste exemplo do Selenium WebDriver com Python, fizemos automação para a 'página de login do Facebook' usando o driver do Firefox.

Exemplo 1 do Selenium Python: 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 Código

Explicação do código

  • Linha de código 1 : Do módulo de selênio importe o webdriver
  • Linha de código 2 : De chaves de importação do módulo de selênio
  • Linha de código 3 : User é uma variável que será usada para armazenar os valores do nome de usuário.
  • Linha de código 4 : A variável 'senha' será usada para armazenar os valores da senha.
  • Linha de código 5 : Nesta linha, estamos inicializando o 'FireFox' tornando-o um objeto.
  • Linha de código 6 : O 'método driver.get' irá navegar para uma página fornecida pelo URL. O WebDriver esperará até que a página tenha sido completamente carregada (ou seja, a ocasião 'onload' foi liberada), antes de retornar o controle para o seu teste ou script.
  • Linha de código 7 : Nesta linha, estamos encontrando o elemento da caixa de texto onde o 'e-mail' deve ser escrito.
  • Linha de código 8 : Agora estamos enviando os valores para a seção de e-mail
  • Linha de código 9 : O mesmo para a senha
  • Linha de código 10 : Enviando valores para a seção de senha
  • Linha de código 11 : element.send_keys (Keys.RETURN) é usado para pressionar enter após os valores serem inseridos
  • Linha de código 12 : Fechar

SAÍDA

Os valores do nome de usuário 'on2vhf' e senha inseridos.

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

EXEMPLO 2: Faça login no Facebook e verifique o título

Neste exemplo,

  • Vamos abrir uma página de login.
  • Preencha os campos obrigatórios 'nome de usuário' e 'senha'.
  • Verifique 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

Explicação do código:

  • Linha de código 1-2: Importar pacotes de selênio
  • Linha de código 4: inicialize o Firefox criando um objeto
  • Linha de código 6: Obter página de login (Facebook)
  • Linha de código 8-10: Buscar nome de usuário, caixas de entrada de senha e botão de envio.
  • Linha de código 11-12: Insira os dados nas caixas de entrada de nome de usuário e senha
  • Linha de código 14: Clique no botão 'Enviar'
  • Linha de código 15: Crie um objeto de espera com um tempo limite de 5 segundos.
  • Linha de código 16: Capturando o título do objeto 'navegador'.
  • Linha de código 17: Testando a seqüência de título capturada com 'Facebook'

Resumo :

  • Selenium é um software de código aberto baseado na web ferramenta de automação .
  • A linguagem Python é usada com Selenium para teste. É muito menos prolixo e fácil de usar do que qualquer outra linguagem de programação
  • As APIs Python permitem que você se conecte ao navegador por meio do Selenium
  • O Selenium pode enviar os comandos padrão do Python para diferentes navegadores, apesar da variação no design de seus navegadores.