• Categorias
    • Desenvolvimiento de software
    • Machine Learning & AI
    • Carreira de programador e dicas
    • Histórias de sucesso
  • Materiais Gratuitos
    • Calculadora CLT x PJ
    • Quiz de Front-end
    • Quiz de Mobile
    • Guia Full Stack atualizado
    • Guia de Negociação Salarial para Devs
    • Modelo de Currículo Internacional
  • Para Talentos
    • Criar perfil gratis
    • Ver vagas
  • Categorias
    • Desenvolvimiento de software
    • Machine Learning & AI
    • Carreira de programador e dicas
    • Histórias de sucesso
  • Materiais Gratuitos
    • Calculadora CLT x PJ
    • Quiz de Front-end
    • Quiz de Mobile
    • Guia Full Stack atualizado
    • Guia de Negociação Salarial para Devs
    • Modelo de Currículo Internacional
  • Para Talentos
    • Criar perfil gratis
    • Ver vagas

Início Automatizando Testes com Python, Selenium e Behave

  • Foto de Geekhunter Geekhunter
  • outubro 22, 2024
imagem roxa com testes automatizados com python selenium e behave escrito

Automatizando Testes com Python, Selenium e Behave

No artigo de hoje, mostrarei como realizar testes automatizados com Python, Selenium e Behave através de um projeto totalmente prático.

Vamos lá!

10 Livros de Python para ser um especialista

Testes automatizados

A idéia desse artigo é compartilhar com vocês um pouco de conhecimento que tenho trabalhando com testes automatizados no dia a dia 🙂

Vamos desenvolver um projeto prático, onde iremos verificar no site do Globo Esporte quem é o 1º colocado no Campeonato Brasileiro.

Utilizaremos Python, Selenium e Behave (utilizaremos o BDD para escrever nossa estória de usuário, olha o que lindo)

Pré requisitos

  • Python 3.6+
  • PIP
  • Virtualenv (iremos instalar com o PIP)
  • Selenium (iremos instalar com o PIP)
  • Behave (iremos instalar com o PIP)
  • Driver de um Browser¹: Google Chrome ou Mozilla Firefox.

¹ — Ressaltando que a pasta onde está o Driver necessita estar no PATH.

Vamos começar o jogo?

Testes automatizados

Partirei do pré-suposto que você tem pelo menos o Python 3 e o PIP instalado no seu computador, se você não tiver instalado instale-o agora.

Se já tem o Python e o PIP instalado, execute o comando abaixo no seu terminal caso não tenha o virtualenv.

 $ pip install virtualenv 

Após instalar o virtualenv, iremos criar nosso ambiente virtual, onde iremos instalar todas as dependências do nosso projeto, precisamos criar um ambiente virtual.

Execute o comando abaixo na pasta raiz do seu projeto para criar o ambiente virtual, lembrando que o “env” pode ser substituído por qualquer nome que você escolha.

 $ virtualenv env 

Para ativar o ambiente, execute o comando abaixo.

Caso utilize o Windows.

 env\Scripts\activate 

Caso utilize o Linux/MacOS

 $ source ./env/bin/activate 

O comando acima irá ativar a virtualenv e teremos um retorno similar ao ilustrado abaixo.

Note que o nome da virtualenv agora é exibido antes do caminho do diretório em que estamos. Isso indica que a virtualenv foi ativada com sucesso.

>>Leitura Recomendada:
Algoritmos de recomendação: o que são e como implementá-los?

Instalando o Selenium e o Behave

Agora vamos instalar no nosso ambiente virtual o Selenium e o Behave, para isso execute os comandos abaixo.

 (env) $ pip install selenium 
 (env) $ pip install behave 

Vamos organizar nosso código com a seguinte estrutura:

Vamos criar primeiramente o arquivo environment.py, esse arquivo deve conter as configurações básicas do projeto.

  • Na linha 1 importamos o webdriver do Selenium para que possamos interagir com os elementos da página.
  • Nas linhas 3 e 4 criamos uma instância do webdriver no nosso projeto. Veja que não informei nenhum parâmetro em Chrome(), por isso a importância da pasta onde está o driver está no PATH do sistema.
  • Na linha 6 especificamos que o comando print() seja exibido após cada step do nosso teste.
  • E por último nas linha 9 e 10, encerramos a instância do driver em execução(encerramos o navegador).

Vamos trabalhar agora no arquivo behave.ini. Esse arquivo tem uma importante configuração que precisaremos em nosso projeto: Mostrar saídas em comandos print (algo que por padrão no behave vem desativado).

Dentro da pasta features criaremos agora nosso Gherkin, onde terá a nossa estória de usuário.

Após escrever a feature, execute o comando abaixo no seu terminal:

 (env) $ behave 

Se deu tudo certo, você terá como resposta algo parecido com o código abaixo.

 — Copie o conteúdo abaixo para que posteriormente implementemos em nosso projeto.

Iremos implementar agora os steps do nosso teste, crie o arquivo consulta_classificacao.py dentro da pasta steps com o conteúdo abaixo.

Na linha 1, importamos do Behave as funções given, when e then e na linha 4 definimos uma variável com a URL do site que interagiremos (globoesporte.com).

>>Leitura Recomendada:
Python microservices: Nameko + Flask + RabbitMQ + Docker

Passo a passo da automação de teste

Desenvolveremos nosso step passo a passo para que entenda o que está sendo feito em cada linha do arquivo  🙂

Dando continuidade, pegue o conteúdo que você copiou na execução do comando behave e cole abaixo no código implementado acima.

Vamos colocar os robôs para trabalharem? 

Rodando nosso primeiro teste com Python, Selenium e Behave….

Para que possamos ver nosso projeto funcionando pela primeira vez, implemente o código abaixo no given.

Digite novamente no seu terminal:

 (env) $ behave 

Feito isso, seu navegador deve abrir no site do Globo Esporte.

Para dar continuidade nos nossos testes automatizados, iremos clicar no menu lateral.

Vamos implementar nosso código?

  • Na linha 7, definimos uma variável com o elemento que estamos interagindo.
  • Nas linhas 15 e 16, clicamos no elemento que selecionamos.

 Após clicar no menu, vamos clicar no link “brasileirão 2019”.

Continuando a implementação…

Após clicar no link do brasileirão, será carregada a página com a classificação.

Para certificarmos que a classificação é exibida, vamos selecionar o elemento (pelo xpath) com o primeiro colocado e buscar o texto do elemento.

Let’s Go!

Implemente o código:

>>Leitura Recomendada:
Melhores linguagens de programação para devs iniciantes

Finalizando os testes automatizados

Por último vamos implementar nosso step que busca o primeiro colocado e exibe em tela. Como plus, vamos salvar o resultado em um txt usando o Python.

  • Na linha 29 buscamos o texto contido no elemento get_primeiro e salvamos na variável primeiro, para exibirmos-o em tela.
  • A partir das linhas 33 salvamos a variável primeiro em um arquivo txt, na pasta results.

Por fim, para que possamos ver nosso teste em ação, execute novamente no terminal o comando.

 (env) $ behave 

Se tudo der certo e você tiver seguido passo a passo o artigo, o teste será executado e você verá uma tela como a abaixo.

Será criado, também, o arquivo results.txt na pasta results com o primeiro colocado.

Se quiser acessar o código fonte completo do projeto, acessa lá meu github.

É isso pessoal, terminamos aqui o artigo.

Por favor, não deixem de compartilhar, comentar, deixar seu feedback. E ah, se estiver buscando por uma oportunidade na área, que tal acessar nossa página com vagas para desenvolvedores Python? ✌

Foto de Geekhunter

Geekhunter

Python IDE
10 melhores IDEs e editores de código em Python para 2025
  • março 18, 2025
o que é commit
O que é Commit e como usar Commits Semânticos
  • dezembro 13, 2024
certificações em TI
10 certificações em TI muito valorizadas hoje
  • novembro 20, 2024
Consultor SAP: o que faz, salário e como se tornar um
  • março 20, 2025
brainfuck
Brainfuck: A linguagem esotérica que desafia programadores até hoje
  • junho 27, 2025
gerente de tecnologia
As principais habilidades de um gerente de tecnologia
  • junho 27, 2025
vagas de TI
Vagas de TI: como encontrar uma que combine com você?
  • junho 26, 2025
Planejamento da equipe de metodologia scrum
Metodologia Scrum: o básico que todo DEV precisa saber
  • junho 24, 2025

Gosta do conteúdo? Assine nossa Newsletter!

Desenvolvimiento de software

Brainfuck: A linguagem esotérica que desafia programadores até hoje

  • Geekhunter
  • junho 27, 2025
Carreira de programador e dicas

As principais habilidades de um gerente de tecnologia

  • Geekhunter
  • junho 27, 2025
Desenvolvimiento de software

Vagas de TI: como encontrar uma que combine com você?

  • GeekHunter
  • junho 26, 2025
Desenvolvimiento de software

Metodologia Scrum: o básico que todo DEV precisa saber

  • Geekhunter
  • junho 24, 2025
Carreira de programador e dicas

Dicas de carreira: como criar seu perfil profissional com foco na área tech

  • GeekHunter
  • junho 24, 2025
AnteriorAnteriorComo construir uma aplicação com Docker?
PróximoComponentes React: componentes de classe e funcional sem estadoPróximo

Rod. José Carlos Daux – SC
401, 4120 – km 4, Bairro Saco
Grande – Florianópolis – SC
CEP 88032-005

Para Profissionais
  • Criar Perfil
  • Vagas de tecnologia
  • Blog TI
  • Criar Perfil
  • Vagas de tecnologia
  • Blog TI
Para Empresas
  • Plataforma de Recrutamento Tech
  • Serviço de Recrutamento Tech
  • Nossos Planos
  • GeekAcademy
  • Blog de RHTech
  • Perguntas Frequentes
  • Login Empresas
  • Plataforma de Recrutamento Tech
  • Serviço de Recrutamento Tech
  • Nossos Planos
  • GeekAcademy
  • Blog de RHTech
  • Perguntas Frequentes
  • Login Empresas
A Geekhunter
  • Sobre a GeekHunter
  • Suporte
  • Políticas de Privacidade
  • Termos de Uso
  • Portal LGPD
  • Sobre a GeekHunter
  • Suporte
  • Políticas de Privacidade
  • Termos de Uso
  • Portal LGPD

Add Your Heading Text Here