{"id":8312,"date":"2024-10-22T16:04:44","date_gmt":"2024-10-22T19:04:44","guid":{"rendered":"https:\/\/geekblogti.wpengine.com\/?p=8312"},"modified":"2024-10-29T12:25:53","modified_gmt":"2024-10-29T15:25:53","slug":"automatizando-testes-com-python-selenium-e-behave","status":"publish","type":"post","link":"https:\/\/www.geekhunter.com/pt/blog\/automatizando-testes-com-python-selenium-e-behave\/","title":{"rendered":"Automatizando Testes com Python, Selenium e Behave"},"content":{"rendered":"\r\n<p class=\"wp-block-paragraph\">No artigo de hoje, mostrarei como realizar<strong><a href=\"https:\/\/www.geekhunter.com\/pt\/blog\/as-maiores-vantagens-de-testes-automatizados\/\"> testes<\/a> automatizados<\/strong> com <strong><a href=\"https:\/\/www.geekhunter.com\/pt\/blog\/como-fazer-um-web-scraping-python\/\">Python<\/a><\/strong>, Selenium e Behave atrav\u00e9s de um projeto totalmente pr\u00e1tico.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Vamos l\u00e1!<\/p>\r\n\r\n\r\n\r\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\r\n<p>10 <a href=\"https:\/\/www.geekhunter.com\/pt\/blog\/10-livros-de-python-que-todo-dev-especialista-deve-ler\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Livros de Python<\/strong><\/a> para ser um especialista<\/p>\r\n<\/blockquote>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Testes automatizados<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">A id\u00e9ia desse artigo \u00e9 compartilhar com voc\u00eas um pouco de conhecimento que tenho trabalhando com<strong> testes automatizados<\/strong>\u00a0no dia a dia\u00a0\ud83d\ude42<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Vamos desenvolver um projeto pr\u00e1tico, onde iremos verificar no site do Globo Esporte quem \u00e9 o 1\u00ba colocado no Campeonato Brasileiro.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Utilizaremos Python, Selenium e Behave (utilizaremos o<a href=\"https:\/\/www.geekhunter.com\/pt\/blog\/a-juncao-do-behavior-driven-development-e-metodologia-agil\/\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\" BDD (abre numa nova aba)\"><strong> BDD<\/strong><\/a> para escrever nossa est\u00f3ria de usu\u00e1rio, olha o que lindo)<\/p>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\"><strong>Pr\u00e9 requisitos<\/strong><\/h3>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li><a href=\"https:\/\/www.python.org\/downloads\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Python 3.6+<\/strong><\/a><\/li>\r\n<li><a href=\"https:\/\/pip.pypa.io\/en\/stable\/installing\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>PIP<\/strong><\/a><\/li>\r\n<li>Virtualenv (iremos instalar com o PIP)<\/li>\r\n<li>Selenium (iremos instalar com o PIP)<\/li>\r\n<li><a href=\"https:\/\/pypi.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">Behave<\/a>\u00a0(iremos instalar com o PIP)<\/li>\r\n<li>Driver de um Browser\u00b9:\u00a0<a href=\"https:\/\/sites.google.com\/a\/chromium.org\/chromedriver\/downloads\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Google Chrome<\/strong><\/a>\u00a0ou\u00a0<a href=\"https:\/\/github.com\/mozilla\/geckodriver\/releases\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Mozilla Firefox<\/strong><\/a>.<\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\"><em> \u00b9\u200a\u2014\u200aRessaltando que a pasta onde est\u00e1 o Driver necessita estar no PATH. <\/em><\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Vamos come\u00e7ar o\u00a0jogo?<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.geekhunter.com\/pt\/candidates\/signup?utm_source=Blog&amp;utm_medium=cta&amp;utm_campaign=blog-cta-pagina-de-cadastros\" target=\"_blank\" rel=\"noreferrer noopener\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"209\" class=\"wp-image-8339\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/CTA-Emprego-dos-sonhos-15-1024x209.jpg\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/CTA-Emprego-dos-sonhos-15-1024x209.jpg 1024w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/CTA-Emprego-dos-sonhos-15-150x31.jpg 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/CTA-Emprego-dos-sonhos-15-100x20.jpg 100w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/CTA-Emprego-dos-sonhos-15-600x122.jpg 600w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/CTA-Emprego-dos-sonhos-15-450x92.jpg 450w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/CTA-Emprego-dos-sonhos-15-960x196.jpg 960w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/CTA-Emprego-dos-sonhos-15-300x61.jpg 300w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/CTA-Emprego-dos-sonhos-15-768x156.jpg 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Testes automatizados<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Partirei do pr\u00e9-suposto que voc\u00ea tem pelo menos o<strong> Python 3<\/strong> e o <strong>PIP<\/strong> instalado no seu computador, se voc\u00ea n\u00e3o tiver instalado instale-o agora.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Se j\u00e1 tem o Python e o PIP instalado, execute o comando abaixo no seu terminal caso n\u00e3o tenha o<em> virtualenv<\/em>.<\/p>\r\n\r\n\r\n\r\n<pre class=\"wp-block-preformatted\"> $ pip install virtualenv <\/pre>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Ap\u00f3s instalar o <em>virtualenv<\/em>, iremos criar nosso ambiente virtual, onde iremos instalar todas as depend\u00eancias do nosso projeto, precisamos criar um ambiente virtual.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Execute o comando abaixo na<strong> pasta raiz<\/strong> do seu projeto para criar o ambiente virtual, lembrando que o\u00a0<em>\u201cenv\u201d\u00a0<\/em>pode ser substitu\u00eddo por qualquer nome que voc\u00ea escolha<em>.<\/em><\/p>\r\n\r\n\r\n\r\n<pre class=\"wp-block-preformatted\"> $ virtualenv env <\/pre>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Para ativar o ambiente, execute o comando abaixo.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Caso utilize o\u00a0<strong>Windows.<\/strong><\/p>\r\n\r\n\r\n\r\n<pre class=\"wp-block-preformatted\"> env\\Scripts\\activate <\/pre>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Caso utilize o <strong>Linux\/MacOS<\/strong><\/p>\r\n\r\n\r\n\r\n<pre class=\"wp-block-preformatted\"> $ source .\/env\/bin\/activate <\/pre>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">O comando acima ir\u00e1 ativar a<em> virtualenv <\/em>e teremos um retorno similar ao ilustrado abaixo.<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" width=\"557\" height=\"41\" class=\"wp-image-8313\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/1_agrwuvtotpsc9hirgmvoma.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/1_agrwuvtotpsc9hirgmvoma.png 557w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/1_agrwuvtotpsc9hirgmvoma-150x11.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/1_agrwuvtotpsc9hirgmvoma-100x7.png 100w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/1_agrwuvtotpsc9hirgmvoma-450x33.png 450w\" sizes=\"(max-width: 557px) 100vw, 557px\" \/><\/figure>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Note que o nome da <em>virtualenv<\/em> agora \u00e9 exibido antes do caminho do diret\u00f3rio em que estamos. Isso indica que a <em>virtualenv<\/em> foi ativada com sucesso.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\"><strong>&gt;&gt;Leitura Recomendada:<\/strong><br \/><a href=\"https:\/\/www.geekhunter.com\/pt\/blog\/algoritmos-de-recomendacao-o-que-sao-e-como-implementa-los\/\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"A (abre numa nova aba)\"><strong>Algoritmos de recomenda\u00e7\u00e3o<\/strong><\/a>: o que s\u00e3o e como implement\u00e1-los?<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Instalando o Selenium e o Behave<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Agora vamos instalar no nosso ambiente virtual o<strong> Selenium<\/strong> e o <strong>Behave<\/strong>, para isso execute os comandos abaixo.<\/p>\r\n\r\n\r\n\r\n<pre class=\"wp-block-preformatted\"> (env) $ pip install selenium \r\n (env) $ pip install behave <\/pre>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Vamos organizar nosso c\u00f3digo com a seguinte estrutura:<\/p>\r\n\r\n\r\n\r\n<div class=\"wp-block-image\">\r\n<figure class=\"aligncenter\"><img decoding=\"async\" width=\"274\" height=\"166\" class=\"wp-image-8314\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/de314-1yjw4wsivwgdux2hmkxxtsq.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/de314-1yjw4wsivwgdux2hmkxxtsq.png 274w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/de314-1yjw4wsivwgdux2hmkxxtsq-150x91.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/de314-1yjw4wsivwgdux2hmkxxtsq-100x61.png 100w\" sizes=\"(max-width: 274px) 100vw, 274px\" \/><\/figure>\r\n<\/div>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Vamos criar primeiramente o arquivo\u00a0<strong><em>environment.py,\u00a0<\/em><\/strong>esse arquivo deve conter as configura\u00e7\u00f5es b\u00e1sicas do projeto.<\/p>\r\n\r\n\r\n\r\n<div class=\"wp-block-image\">\r\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"351\" height=\"200\" class=\"wp-image-8315\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/1_yoztshdyylw1rv0yqimfpa.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/1_yoztshdyylw1rv0yqimfpa.png 351w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/1_yoztshdyylw1rv0yqimfpa-150x85.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/1_yoztshdyylw1rv0yqimfpa-100x57.png 100w\" sizes=\"(max-width: 351px) 100vw, 351px\" \/><\/figure>\r\n<\/div>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li>Na linha 1 importamos o<em> webdriver<\/em> do<strong> Selenium<\/strong> para que possamos interagir com os elementos da p\u00e1gina.<\/li>\r\n<li>Nas linhas 3 e 4 criamos uma inst\u00e2ncia do<em> webdriver <\/em>no nosso projeto. Veja que n\u00e3o informei nenhum par\u00e2metro em\u00a0<strong>Chrome(),\u00a0<\/strong>por isso a import\u00e2ncia da pasta onde est\u00e1 o driver est\u00e1 no PATH do sistema.<\/li>\r\n<li>Na linha 6 especificamos que o comando\u00a0<em>print()<\/em>\u00a0seja exibido ap\u00f3s cada step do nosso teste.<\/li>\r\n<li>E por \u00faltimo nas linha 9 e 10, encerramos a inst\u00e2ncia do driver em execu\u00e7\u00e3o(encerramos o navegador).<\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Vamos trabalhar agora no arquivo\u00a0<em>behave.ini. <\/em>Esse arquivo tem uma importante configura\u00e7\u00e3o que precisaremos em nosso projeto: Mostrar sa\u00eddas em comandos <em>print<\/em> (algo que por padr\u00e3o no <em>behave<\/em> vem desativado)<em>.<\/em><\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"628\" height=\"115\" class=\"wp-image-8316\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/111.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/111.png 628w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/111-150x27.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/111-100x18.png 100w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/111-600x110.png 600w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/111-450x82.png 450w\" sizes=\"(max-width: 628px) 100vw, 628px\" \/><\/figure>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Dentro da pasta\u00a0<em>features<\/em>\u00a0criaremos agora nosso <strong>Gherkin<\/strong>, onde ter\u00e1 a nossa est\u00f3ria de usu\u00e1rio.<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"576\" height=\"241\" class=\"wp-image-8317\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/2222.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/2222.png 576w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/2222-150x63.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/2222-100x42.png 100w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/2222-450x188.png 450w\" sizes=\"(max-width: 576px) 100vw, 576px\" \/><\/figure>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Ap\u00f3s escrever a <em>feature<\/em>, execute o comando abaixo no seu terminal:<\/p>\r\n\r\n\r\n\r\n<pre class=\"wp-block-preformatted\"> (env) $ behave <\/pre>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Se deu tudo certo, voc\u00ea ter\u00e1 como resposta algo parecido com o c\u00f3digo abaixo.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">\u200a\u2014\u200a<em>Copie o conte\u00fado abaixo para que posteriormente implementemos em nosso projeto.<\/em><\/p>\r\n\r\n\r\n\r\n<div class=\"wp-block-image\">\r\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"703\" height=\"337\" class=\"wp-image-8318\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/333.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/333.png 703w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/333-150x72.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/333-100x48.png 100w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/333-600x288.png 600w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/333-450x216.png 450w\" sizes=\"(max-width: 703px) 100vw, 703px\" \/><\/figure>\r\n<\/div>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Iremos implementar agora os steps do nosso teste, crie o arquivo\u00a0<em>consulta_classificacao.py\u00a0<\/em>dentro da pasta\u00a0<em>steps\u00a0<\/em>com o conte\u00fado abaixo.<\/p>\r\n\r\n\r\n\r\n<div class=\"wp-block-image\">\r\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"484\" height=\"103\" class=\"wp-image-8319\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/4444.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/4444.png 484w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/4444-150x32.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/4444-100x21.png 100w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/4444-450x96.png 450w\" sizes=\"(max-width: 484px) 100vw, 484px\" \/><\/figure>\r\n<\/div>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Na linha 1, importamos do <strong>Behave<\/strong> as fun\u00e7\u00f5es <em>given, when e then<\/em> e na linha 4 definimos uma vari\u00e1vel com a URL do site que interagiremos (<a href=\"https:\/\/globoesporte.globo.com\/\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"globoesporte.com (abre numa nova aba)\">globoesporte.com<\/a>).<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\"><strong>&gt;&gt;Leitura Recomendada:<\/strong><br \/><a href=\"https:\/\/www.geekhunter.com\/pt\/blog\/python-microservices\/\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Python microservices (abre numa nova aba)\"><strong>Python microservices<\/strong><\/a>: Nameko + <strong><a href=\"https:\/\/www.geekhunter.com\/pt\/blog\/flask-framework-python\/\" target=\"_blank\" rel=\"noreferrer noopener\">Flask<\/a><\/strong> + RabbitMQ + Docker<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Passo a passo da automa\u00e7\u00e3o de teste<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Desenvolveremos nosso <em>step<\/em> passo a passo para que entenda o que est\u00e1 sendo feito em cada linha do arquivo \u00a0\ud83d\ude42<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Dando continuidade, pegue o conte\u00fado que voc\u00ea copiou na execu\u00e7\u00e3o do comando\u00a0<em>behave e\u00a0<\/em>cole abaixo no c\u00f3digo implementado acima.<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"786\" height=\"427\" class=\"wp-image-8320\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/5555.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/5555.png 786w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/5555-150x81.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/5555-100x54.png 100w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/5555-600x326.png 600w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/5555-450x244.png 450w\" sizes=\"(max-width: 786px) 100vw, 786px\" \/><\/figure>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Vamos colocar os rob\u00f4s para trabalharem?\u00a0<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Rodando nosso primeiro teste com <strong>Python, Selenium e\u00a0Behave<\/strong>\u2026.<\/p>\r\n\r\n\r\n\r\n<div class=\"wp-block-image\">\r\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"287\" height=\"400\" class=\"wp-image-8321\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/1ae17-1k_vrcdkwvnukvdxe53opiq.gif\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/1ae17-1k_vrcdkwvnukvdxe53opiq.gif 287w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/1ae17-1k_vrcdkwvnukvdxe53opiq-108x150.gif 108w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/1ae17-1k_vrcdkwvnukvdxe53opiq-72x100.gif 72w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/1ae17-1k_vrcdkwvnukvdxe53opiq-150x209.gif 150w\" sizes=\"(max-width: 287px) 100vw, 287px\" \/><\/figure>\r\n<\/div>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Para que possamos ver nosso projeto funcionando pela primeira vez, implemente o c\u00f3digo abaixo no\u00a0<em>given.<\/em><\/p>\r\n\r\n\r\n\r\n<div class=\"wp-block-image\">\r\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"478\" height=\"70\" class=\"wp-image-8322\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/666.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/666.png 478w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/666-150x22.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/666-100x15.png 100w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/666-450x66.png 450w\" sizes=\"(max-width: 478px) 100vw, 478px\" \/><\/figure>\r\n<\/div>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Digite novamente no seu terminal:<\/p>\r\n\r\n\r\n\r\n<pre class=\"wp-block-preformatted\"> (env) $ behave <\/pre>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Feito isso, seu navegador deve abrir no site do Globo Esporte.<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"240\" class=\"wp-image-8323\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/globoesporte.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/globoesporte.png 800w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/globoesporte-150x45.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/globoesporte-100x30.png 100w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/globoesporte-600x180.png 600w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/globoesporte-450x135.png 450w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/figure>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Para dar continuidade nos nossos testes automatizados, iremos clicar no menu lateral.<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"240\" class=\"wp-image-8324\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/ge1.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/ge1.png 800w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/ge1-150x45.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/ge1-100x30.png 100w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/ge1-600x180.png 600w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/ge1-450x135.png 450w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/figure>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" class=\"wp-image-8325\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/ge2-1024x113.png\" alt=\"\" \/><\/figure>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Vamos implementar nosso c\u00f3digo?<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"728\" height=\"279\" class=\"wp-image-8326\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/777.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/777.png 728w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/777-150x57.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/777-100x38.png 100w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/777-600x230.png 600w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/777-450x172.png 450w\" sizes=\"(max-width: 728px) 100vw, 728px\" \/><\/figure>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li>Na linha 7, definimos uma vari\u00e1vel com o elemento que estamos interagindo.<\/li>\r\n<li>Nas linhas 15 e 16, clicamos no elemento que selecionamos.<\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">\u00a0Ap\u00f3s clicar no menu, vamos clicar no link \u201c<em>brasileir\u00e3o 2019<\/em>\u201d.<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" class=\"wp-image-8327\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/ge3-1024x111.png\" alt=\"\" \/><\/figure>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Continuando a implementa\u00e7\u00e3o\u2026<\/p>\r\n\r\n\r\n\r\n<div class=\"wp-block-image\">\r\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"236\" class=\"wp-image-8328\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/888.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/888.png 800w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/888-150x44.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/888-100x30.png 100w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/888-600x177.png 600w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/888-450x133.png 450w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/figure>\r\n<\/div>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Ap\u00f3s clicar no link do brasileir\u00e3o, ser\u00e1 carregada a p\u00e1gina com a classifica\u00e7\u00e3o.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Para certificarmos que a classifica\u00e7\u00e3o \u00e9 exibida, vamos selecionar o elemento (pelo <em>xpath<\/em>) com o primeiro colocado e buscar o texto do elemento.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Let&#8217;s Go!<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"247\" class=\"wp-image-8329\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/ge4.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/ge4.png 800w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/ge4-150x46.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/ge4-100x31.png 100w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/ge4-600x185.png 600w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/ge4-450x139.png 450w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/figure>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Implemente o c\u00f3digo:<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"304\" class=\"wp-image-8656\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/12\/1_BC3Y8FBua9uTDi_M3EnLKQ.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/12\/1_BC3Y8FBua9uTDi_M3EnLKQ.png 800w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/12\/1_BC3Y8FBua9uTDi_M3EnLKQ-150x57.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/12\/1_BC3Y8FBua9uTDi_M3EnLKQ-100x38.png 100w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/12\/1_BC3Y8FBua9uTDi_M3EnLKQ-600x228.png 600w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/12\/1_BC3Y8FBua9uTDi_M3EnLKQ-450x171.png 450w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/figure>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\"><strong>&gt;&gt;Leitura Recomendada:<\/strong><br \/><a href=\"https:\/\/www.geekhunter.com\/pt\/blog\/melhores-linguagens-de-programacao-para-devs-iniciantes\/\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Melhores linguagens de programa\u00e7\u00e3o  (abre numa nova aba)\"><strong>Melhores linguagens de programa\u00e7\u00e3o <\/strong><\/a>para devs iniciantes<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Finalizando os testes automatizados<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Por \u00faltimo vamos implementar nosso<em> step <\/em>que busca o primeiro colocado e exibe em tela. Como<em> plus<\/em>, vamos salvar o resultado em um txt usando o <strong>Python<\/strong>.<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"599\" height=\"234\" class=\"wp-image-8331\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/1010.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/1010.png 599w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/1010-150x59.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/1010-100x39.png 100w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/1010-450x176.png 450w\" sizes=\"(max-width: 599px) 100vw, 599px\" \/><\/figure>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li>Na linha 29 buscamos o texto contido no elemento\u00a0<em>get_primeiro\u00a0<\/em>e salvamos na vari\u00e1vel<em>\u00a0primeiro<\/em>, para exibirmos-o em tela.<\/li>\r\n<li>A partir das linhas 33 salvamos a vari\u00e1vel<em> primeir<\/em>o em um arquivo txt, na pasta results.<\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Por fim, para que possamos ver nosso teste em a\u00e7\u00e3o, execute novamente no terminal o comando.<\/p>\r\n\r\n\r\n\r\n<pre class=\"wp-block-preformatted\"> (env) $ behave <\/pre>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Se tudo der certo e voc\u00ea tiver seguido passo a passo o artigo, o teste ser\u00e1 executado e voc\u00ea ver\u00e1 uma tela como a abaixo.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Ser\u00e1 criado, tamb\u00e9m, o arquivo\u00a0<em>results.txt\u00a0<\/em>na pasta <em>results<\/em> com o primeiro colocado.<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"272\" class=\"wp-image-8332\" src=\"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/onze.png\" alt=\"\" srcset=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/onze.png 800w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/onze-150x51.png 150w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/onze-100x34.png 100w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/onze-600x204.png 600w, https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/onze-450x153.png 450w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/figure>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Se quiser acessar o c\u00f3digo fonte completo do projeto, acessa l\u00e1 meu\u00a0<a href=\"https:\/\/github.com\/joaovb\/automacao-brasileirao-artigo\" target=\"_blank\" rel=\"noreferrer noopener\">github<\/a>.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">\u00c9 isso pessoal, terminamos aqui o artigo.<\/p>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Por favor, n\u00e3o deixem de compartilhar, comentar, deixar seu feedback. E ah, se estiver buscando por uma oportunidade na \u00e1rea, que tal acessar nossa p\u00e1gina com <strong><a href=\"https:\/\/www.geekhunter.com\/pt\/vagas\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"vagas para devs em Python (abre numa nova aba)\">vagas para desenvolvedores Python<\/a><\/strong>? \u270c<\/p>\r\n","protected":false},"excerpt":{"rendered":"<p>No artigo de hoje, mostrarei como realizar testes automatizados com Python, Selenium e Behave atrav\u00e9s de um projeto totalmente pr\u00e1tico. Vamos l\u00e1! 10 Livros de Python para ser um especialista Testes automatizados A id\u00e9ia desse artigo \u00e9 compartilhar com voc\u00eas um pouco de conhecimento que tenho trabalhando com testes automatizados\u00a0no dia a dia\u00a0\ud83d\ude42 Vamos desenvolver [&hellip;]<\/p>\n","protected":false},"author":167,"featured_media":8347,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[18],"tags":[],"class_list":["post-8312","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-desenvolvimiento-de-software"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.5 (Yoast SEO v28.5) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Testes automatizados: Usando Python, Selenium e BDD<\/title>\n<meta name=\"description\" content=\"Nesse artigo ensinamos na pr\u00e1tica como fazer automa\u00e7\u00e3o de testes usando Python, Selenium e Behavior Driven Development! Leia!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.geekhunter.com\/pt\/blog\/automatizando-testes-com-python-selenium-e-behave\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Automatizando Testes com Python, Selenium e Behave\" \/>\n<meta property=\"og:description\" content=\"No artigo de hoje, mostrarei como realizar testes automatizados com Python, Selenium e Behave atrav\u00e9s de um projeto totalmente pr\u00e1tico. Vamos l\u00e1! 10\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.geekhunter.com\/pt\/blog\/automatizando-testes-com-python-selenium-e-behave\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog Geekhunter\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/geekhunterbr\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-10-22T19:04:44+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-10-29T15:25:53+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/testes-automatizados-com-python-selenium-e-bdd-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1366\" \/>\n\t<meta property=\"og:image:height\" content=\"768\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Geekhunter\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@geekhunterbr\" \/>\n<meta name=\"twitter:site\" content=\"@geekhunterbr\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Geekhunter\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/automatizando-testes-com-python-selenium-e-behave\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/automatizando-testes-com-python-selenium-e-behave\\\/\"},\"author\":{\"name\":\"Geekhunter\",\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/#\\\/schema\\\/person\\\/9f62b173345139f7bbdaf55312c3d400\"},\"headline\":\"Automatizando Testes com Python, Selenium e Behave\",\"datePublished\":\"2024-10-22T19:04:44+00:00\",\"dateModified\":\"2024-10-29T15:25:53+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/automatizando-testes-com-python-selenium-e-behave\\\/\"},\"wordCount\":1006,\"publisher\":{\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/automatizando-testes-com-python-selenium-e-behave\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.geekhunter.com/pt/blog\\\/wp-content\\\/uploads\\\/2019\\\/11\\\/testes-automatizados-com-python-selenium-e-bdd-1.jpg\",\"articleSection\":[\"Desenvolvimiento de software\"],\"inLanguage\":\"pt-BR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/automatizando-testes-com-python-selenium-e-behave\\\/\",\"url\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/automatizando-testes-com-python-selenium-e-behave\\\/\",\"name\":\"Testes automatizados: Usando Python, Selenium e BDD\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/automatizando-testes-com-python-selenium-e-behave\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/automatizando-testes-com-python-selenium-e-behave\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.geekhunter.com/pt/blog\\\/wp-content\\\/uploads\\\/2019\\\/11\\\/testes-automatizados-com-python-selenium-e-bdd-1.jpg\",\"datePublished\":\"2024-10-22T19:04:44+00:00\",\"dateModified\":\"2024-10-29T15:25:53+00:00\",\"description\":\"Nesse artigo ensinamos na pr\u00e1tica como fazer automa\u00e7\u00e3o de testes usando Python, Selenium e Behavior Driven Development! Leia!\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/automatizando-testes-com-python-selenium-e-behave\\\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.geekhunter.com/pt/blog\\\/automatizando-testes-com-python-selenium-e-behave\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/automatizando-testes-com-python-selenium-e-behave\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/11\\\/testes-automatizados-com-python-selenium-e-bdd-1.jpg\",\"contentUrl\":\"https:\\\/\\\/www.geekhunter.com/pt/blog\\\/wp-content\\\/uploads\\\/2019\\\/11\\\/testes-automatizados-com-python-selenium-e-bdd-1.jpg\",\"width\":1366,\"height\":768,\"caption\":\"imagem roxa com testes automatizados com python selenium e behave escrito\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/automatizando-testes-com-python-selenium-e-behave\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\\\/\\\/www.geekhunter.com/pt/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mundo TI\",\"item\":\"https:\\\/\\\/www.geekhunter.com/pt/blog\\\/category\\\/mundo-ti\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Desenvolvimiento de software\",\"item\":\"https:\\\/\\\/www.geekhunter.com/pt/blog\\\/category\\\/mundo-ti\\\/desenvolvimiento-de-software\\\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Automatizando Testes com Python, Selenium e Behave\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/\",\"name\":\"Blog de TI\",\"description\":\"Dicas para o RH e profissionais da \u00e1rea TI\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.geekhunter.com/pt/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/#organization\",\"name\":\"GeekHunter\",\"url\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/icon-1.png\",\"contentUrl\":\"https:\\\/\\\/www.geekhunter.com/pt/blog\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/icon-1.png\",\"width\":300,\"height\":300,\"caption\":\"GeekHunter\"},\"image\":{\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/geekhunterbr\\\/\",\"https:\\\/\\\/x.com\\\/geekhunterbr\",\"https:\\\/\\\/www.instagram.com\\\/geekhunterbr\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/geekhunter-brasil\\\/\",\"https:\\\/\\\/www.youtube.com\\\/@GeekHunterOfficial\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/#\\\/schema\\\/person\\\/9f62b173345139f7bbdaf55312c3d400\",\"name\":\"Geekhunter\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/09a0f76de8cf1fa3621f8b73417ce43344b42e1324a07a9af24f57c5eef49840?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/09a0f76de8cf1fa3621f8b73417ce43344b42e1324a07a9af24f57c5eef49840?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/09a0f76de8cf1fa3621f8b73417ce43344b42e1324a07a9af24f57c5eef49840?s=96&d=mm&r=g\",\"caption\":\"Geekhunter\"},\"url\":\"https:\\\/\\\/www.geekhunter.com\\\/pt\\\/blog\\\/author\\\/matias\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Testes automatizados: Usando Python, Selenium e BDD","description":"Nesse artigo ensinamos na pr\u00e1tica como fazer automa\u00e7\u00e3o de testes usando Python, Selenium e Behavior Driven Development! Leia!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.geekhunter.com\/pt\/blog\/automatizando-testes-com-python-selenium-e-behave\/","og_locale":"pt_BR","og_type":"article","og_title":"Automatizando Testes com Python, Selenium e Behave","og_description":"No artigo de hoje, mostrarei como realizar testes automatizados com Python, Selenium e Behave atrav\u00e9s de um projeto totalmente pr\u00e1tico. Vamos l\u00e1! 10","og_url":"https:\/\/www.geekhunter.com\/pt\/blog\/automatizando-testes-com-python-selenium-e-behave\/","og_site_name":"Blog Geekhunter","article_publisher":"https:\/\/www.facebook.com\/geekhunterbr\/","article_published_time":"2024-10-22T19:04:44+00:00","article_modified_time":"2024-10-29T15:25:53+00:00","og_image":[{"width":1366,"height":768,"url":"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/testes-automatizados-com-python-selenium-e-bdd-1.jpg","type":"image\/jpeg"}],"author":"Geekhunter","twitter_card":"summary_large_image","twitter_creator":"@geekhunterbr","twitter_site":"@geekhunterbr","twitter_misc":{"Escrito por":"Geekhunter","Est. tempo de leitura":"10 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.geekhunter.com\/pt\/blog\/automatizando-testes-com-python-selenium-e-behave\/#article","isPartOf":{"@id":"https:\/\/www.geekhunter.com\/pt\/blog\/automatizando-testes-com-python-selenium-e-behave\/"},"author":{"name":"Geekhunter","@id":"https:\/\/www.geekhunter.com\/pt\/blog\/#\/schema\/person\/9f62b173345139f7bbdaf55312c3d400"},"headline":"Automatizando Testes com Python, Selenium e Behave","datePublished":"2024-10-22T19:04:44+00:00","dateModified":"2024-10-29T15:25:53+00:00","mainEntityOfPage":{"@id":"https:\/\/www.geekhunter.com\/pt\/blog\/automatizando-testes-com-python-selenium-e-behave\/"},"wordCount":1006,"publisher":{"@id":"https:\/\/www.geekhunter.com\/pt\/blog\/#organization"},"image":{"@id":"https:\/\/www.geekhunter.com\/pt\/blog\/automatizando-testes-com-python-selenium-e-behave\/#primaryimage"},"thumbnailUrl":"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/testes-automatizados-com-python-selenium-e-bdd-1.jpg","articleSection":["Desenvolvimiento de software"],"inLanguage":"pt-BR"},{"@type":"WebPage","@id":"https:\/\/www.geekhunter.com\/pt\/blog\/automatizando-testes-com-python-selenium-e-behave\/","url":"https:\/\/www.geekhunter.com\/pt\/blog\/automatizando-testes-com-python-selenium-e-behave\/","name":"Testes automatizados: Usando Python, Selenium e BDD","isPartOf":{"@id":"https:\/\/www.geekhunter.com\/pt\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.geekhunter.com\/pt\/blog\/automatizando-testes-com-python-selenium-e-behave\/#primaryimage"},"image":{"@id":"https:\/\/www.geekhunter.com\/pt\/blog\/automatizando-testes-com-python-selenium-e-behave\/#primaryimage"},"thumbnailUrl":"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/testes-automatizados-com-python-selenium-e-bdd-1.jpg","datePublished":"2024-10-22T19:04:44+00:00","dateModified":"2024-10-29T15:25:53+00:00","description":"Nesse artigo ensinamos na pr\u00e1tica como fazer automa\u00e7\u00e3o de testes usando Python, Selenium e Behavior Driven Development! Leia!","breadcrumb":{"@id":"https:\/\/www.geekhunter.com\/pt\/blog\/automatizando-testes-com-python-selenium-e-behave\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.geekhunter.com/pt/blog\/automatizando-testes-com-python-selenium-e-behave\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.geekhunter.com\/pt\/blog\/automatizando-testes-com-python-selenium-e-behave\/#primaryimage","url":"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2019\/11\/testes-automatizados-com-python-selenium-e-bdd-1.jpg","contentUrl":"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2019\/11\/testes-automatizados-com-python-selenium-e-bdd-1.jpg","width":1366,"height":768,"caption":"imagem roxa com testes automatizados com python selenium e behave escrito"},{"@type":"BreadcrumbList","@id":"https:\/\/www.geekhunter.com\/pt\/blog\/automatizando-testes-com-python-selenium-e-behave\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/www.geekhunter.com/pt/blog\/"},{"@type":"ListItem","position":2,"name":"Mundo TI","item":"https:\/\/www.geekhunter.com/pt/blog\/category\/mundo-ti\/"},{"@type":"ListItem","position":3,"name":"Desenvolvimiento de software","item":"https:\/\/www.geekhunter.com/pt/blog\/category\/mundo-ti\/desenvolvimiento-de-software\/"},{"@type":"ListItem","position":4,"name":"Automatizando Testes com Python, Selenium e Behave"}]},{"@type":"WebSite","@id":"https:\/\/www.geekhunter.com\/pt\/blog\/#website","url":"https:\/\/www.geekhunter.com\/pt\/blog\/","name":"Blog de TI","description":"Dicas para o RH e profissionais da \u00e1rea TI","publisher":{"@id":"https:\/\/www.geekhunter.com\/pt\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.geekhunter.com/pt/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Organization","@id":"https:\/\/www.geekhunter.com\/pt\/blog\/#organization","name":"GeekHunter","url":"https:\/\/www.geekhunter.com\/pt\/blog\/","logo":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.geekhunter.com\/pt\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.geekhunter.com\/pt\/blog\/wp-content\/uploads\/2024\/10\/icon-1.png","contentUrl":"https:\/\/www.geekhunter.com/pt/blog\/wp-content\/uploads\/2024\/10\/icon-1.png","width":300,"height":300,"caption":"GeekHunter"},"image":{"@id":"https:\/\/www.geekhunter.com\/pt\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/geekhunterbr\/","https:\/\/x.com\/geekhunterbr","https:\/\/www.instagram.com\/geekhunterbr\/","https:\/\/www.linkedin.com\/company\/geekhunter-brasil\/","https:\/\/www.youtube.com\/@GeekHunterOfficial"]},{"@type":"Person","@id":"https:\/\/www.geekhunter.com\/pt\/blog\/#\/schema\/person\/9f62b173345139f7bbdaf55312c3d400","name":"Geekhunter","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/secure.gravatar.com\/avatar\/09a0f76de8cf1fa3621f8b73417ce43344b42e1324a07a9af24f57c5eef49840?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/09a0f76de8cf1fa3621f8b73417ce43344b42e1324a07a9af24f57c5eef49840?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/09a0f76de8cf1fa3621f8b73417ce43344b42e1324a07a9af24f57c5eef49840?s=96&d=mm&r=g","caption":"Geekhunter"},"url":"https:\/\/www.geekhunter.com\/pt\/blog\/author\/matias\/"}]}},"_links":{"self":[{"href":"https:\/\/www.geekhunter.com/pt/blog\/wp-json\/wp\/v2\/posts\/8312","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.geekhunter.com/pt/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.geekhunter.com/pt/blog\/wp-json\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/www.geekhunter.com/pt/blog\/wp-json\/wp\/v2\/comments?post=8312"}],"version-history":[{"count":0,"href":"https:\/\/www.geekhunter.com/pt/blog\/wp-json\/wp\/v2\/posts\/8312\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.geekhunter.com/pt/blog\/wp-json\/wp\/v2\/media\/8347"}],"wp:attachment":[{"href":"https:\/\/www.geekhunter.com/pt/blog\/wp-json\/wp\/v2\/media?parent=8312"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.geekhunter.com/pt/blog\/wp-json\/wp\/v2\/categories?post=8312"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.geekhunter.com/pt/blog\/wp-json\/wp\/v2\/tags?post=8312"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}