<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Test Bean - Medium]]></title>
        <description><![CDATA[Notas sobre Qualidade de Software - Medium]]></description>
        <link>https://medium.com/testbean?source=rss----9837edbd1a4f---4</link>
        <image>
            <url>https://cdn-images-1.medium.com/proxy/1*TGH72Nnw24QL3iV9IOm4VA.png</url>
            <title>Test Bean - Medium</title>
            <link>https://medium.com/testbean?source=rss----9837edbd1a4f---4</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sun, 15 Nov 2026 14:30:22 GMT</lastBuildDate>
        <atom:link href="https://medium.com/feed/testbean" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[Utilizando Cypress na vida real]]></title>
            <link>https://medium.com/testbean/utilizando-cypress-na-vida-real-a93eec549128?source=rss----9837edbd1a4f---4</link>
            <guid isPermaLink="false">https://medium.com/p/a93eec549128</guid>
            <category><![CDATA[cypress]]></category>
            <category><![CDATA[test-automation]]></category>
            <category><![CDATA[software-testing]]></category>
            <category><![CDATA[automation-testing]]></category>
            <dc:creator><![CDATA[Danilo Feijó]]></dc:creator>
            <pubDate>Tue, 12 Jan 2021 11:25:28 GMT</pubDate>
            <atom:updated>2021-07-21T19:55:09.281Z</atom:updated>
            <content:encoded><![CDATA[<h4>Artigos que me ajudaram implantar e utilizar Cy no mundo real</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/800/0*eMvpywnHAJ_XilnE.jpg" /></figure><p>Recentemente, tive a oportunidade de utilizar <a href="https://www.cypress.io/">Cypress</a> em um projeto. Depois de muito aprendizado em um cenário real, consolidei e listei aqui, alguns links úteis que me ajudaram nessa caminhada.</p><p>O resultado você confere a seguir.</p><h3>Itens</h3><ul><li>Razões para utilizar;</li><li>Curso básico;</li><li>Instalação Básica;</li><li>Configurações triviais;</li><li>Múltiplos ambientes;</li><li>Testes de API;</li><li>Page Objects;</li><li>App Actions;</li><li>Lidando com senhas e o processo de login.</li></ul><h4>Razões para utilizar</h4><p><a href="https://docs.cypress.io/guides/overview/why-cypress.html#Features">Why Cypress?</a></p><p>Mostra ganhos que você terá ao utilizar Cypress. A página completa trás outras informações sobre a ferramenta e links úteis.</p><p><a href="https://link.medium.com/DK4oR6svYcb">Descomplicando testes E2E com Cypress</a></p><p>Mostra vantagens/desvantagens, boas práticas, e um bom contexto sobre a estrutura da Ferramenta. Por <a href="https://medium.com/u/dd8761342544">Mateus José</a>.</p><h4>Curso básico</h4><p><a href="https://www.udemy.com/course/testes-cypress/">Testes de aplicações modernas com Cypress</a></p><p>Curso em português com a melhor avaliação na plataforma.</p><ul><li><a href="https://testautomationu.applitools.com/cypress-tutorial/">Introduction to Cypress</a></li><li><a href="https://testautomationu.applitools.com/advanced-cypress-tutorial/">Advanced Cypress</a></li></ul><p>Cursos da <a href="https://testautomationu.applitools.com/">TAU</a> com tutoriais básicos e avançados. Ótimo conteúdo, gratuito, em inglês.</p><h4>Instalação Básica</h4><p><a href="https://docs.cypress.io/guides/getting-started/installing-cypress.html#npm-install">Installing Cypress</a></p><p>Ajuda a instalar o cypress e deixá-lo <em>up and running</em>.</p><h4>Configurações triviais</h4><p><a href="https://docs.cypress.io/guides/references/configuration.html">Configuration</a></p><p>Lista configurações e detalhes sobre as mesmas. Você provavelmente vai querer customizar algo dessa lista.</p><h4>Múltiplos ambientes</h4><p><a href="https://medium.com/@marcio_rc/como-configurar-o-cypress-para-executar-em-diferentes-ambientes-21e9db9b10d4">Como configurar o Cypress para executar em diferentes ambientes</a></p><p>Habilita parametrização de configurações/informações por ambiente (baseUrl, por exemplo). É o tipo de necessidade bem perceptível no mundo real [e difícil, quando estamos estudando]. Por <a href="https://medium.com/u/c3903f0338f6">Márcio Ramos Corrêa.</a></p><h4>Testes de API</h4><p><a href="https://alexalvess.medium.com/automatizando-testes-em-apis-rest-com-cypress-e-nodejs-fb2ca8b8cfb0">Automatizando testes, em APIs REST, com Cypress e NodeJS</a></p><p>Ensina a criar testes de API com Cypress. Aborda conceitos básicos de API, montagem de um ambiente de testes e por fim, a criação de testes. Por <a href="https://medium.com/u/449e2af93210">Alex Alves</a>.</p><h4>Cucumber</h4><p><a href="https://medium.com/cwi-software/testes-automatizados-com-cypress-e-cucumber-d78b211da766">Testes automatizados com Cypress e Cucumber</a></p><p>Habilita o uso do Cypress com Cucumber. Usar ou não Cucumber no seu projeto é opcional (e polêmico hehe). Se você optou por utilizar, vale conferir. Por <a href="https://medium.com/u/3c26457f0adf">Gabriel Cartelli</a>.</p><p>Estendendo um pouco sobre Cucumber, “<a href="https://link.medium.com/HukhjieuYcb">Como escrever cenários melhores conhecendo anti-padrões de Cucumber</a>” da <a href="https://medium.com/u/fa05a5093526">Danielle Moreira</a> vai te ajudar escrever melhores cenários. Salva esse artigo!</p><h4>Page Objects</h4><p><a href="https://medium.com/reactbrasil/deep-diving-pageobject-pattern-and-using-it-with-cypress-e60b9d7d0d91">Deep diving PageObject pattern and using it with Cypress</a></p><p>Configura [com sucesso] o design pattern Page Objects no Cypress. Por <a href="https://medium.com/u/e3139a046359">Felippe Rodrigo Puhle</a>.</p><h4>App Actions</h4><ul><li><a href="https://www.cypress.io/blog/2019/01/03/stop-using-page-objects-and-start-using-app-actions/">Stop using Page Objects and Start using App Actions</a></li><li><a href="https://glebbahmutov.com/blog/realworld-app-action/">How to write end-to-end test using app and api actions</a></li><li><a href="https://www.cypress.io/blog/2019/10/29/split-a-very-long-cypress-test-into-shorter-ones-using-app-actions/">Split a very long Cypress test into shorter ones using App Actions</a></li></ul><p>App Actions é um prática recomendada para quem utiliza Cypress. Esses 3 artigos vão te ajudar a entender o conceito e aplicar em seu projeto.</p><p>Não utilizei App Actions na prática, mas durante meu tempo de aprendizado, entendi que é preferível utilizar App Actions ao invés de Page objects. Os artigos mostram de maneira completa o conceito, comparativo e vantagens do App Actions frente ao Page objects. Por <a href="https://medium.com/u/38e920770219">Gleb Bahmutov</a>.</p><h4>Lidando com senhas e o processo de login</h4><p><a href="https://glebbahmutov.com/blog/keep-passwords-secret-in-e2e-tests/">Keep passwords secret in E2E tests</a></p><p>&lt;Artigo phoda! Adicionar comentário que mostre todo o seu valor&gt;</p><h3>Conclusão</h3><p>Quando o assunto é Cypress, conteúdo na internet é o que não falta.</p><p>Esse consolidado simples foi o que me ajudou na minha caminhada e talvez ajude na sua também.</p><p>Vou adicionando novos conteúdos aqui conforme aparecer. Valeu!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=a93eec549128" width="1" height="1" alt=""><hr><p><a href="https://medium.com/testbean/utilizando-cypress-na-vida-real-a93eec549128">Utilizando Cypress na vida real</a> was originally published in <a href="https://medium.com/testbean">Test Bean</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Super Bash Helper]]></title>
            <link>https://medium.com/testbean/super-bash-helper-c7af6c4c1d3?source=rss----9837edbd1a4f---4</link>
            <guid isPermaLink="false">https://medium.com/p/c7af6c4c1d3</guid>
            <category><![CDATA[linux]]></category>
            <category><![CDATA[tips]]></category>
            <category><![CDATA[terminal]]></category>
            <category><![CDATA[bash]]></category>
            <dc:creator><![CDATA[Danilo Feijó]]></dc:creator>
            <pubDate>Thu, 13 Feb 2020 21:16:36 GMT</pubDate>
            <atom:updated>2020-02-13T10:42:25.690Z</atom:updated>
            <content:encoded><![CDATA[<h4>Uma super ajuda para fazer a configuração básica do seu Linux recém formatado</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*9zwqViBUS9bqUXwb.jpg" /></figure><p>Sempre que formato minha máquina, a primeira coisa quem vem em mente é a lista de programas pra instalar. Git, NodeJs, VSCode, Postman… e no fim sempre fica algum programa para trás.</p><p>Se fizer tudo usando um terminal, pode ser mais rápido (uma vantagem do Linux sobre o Windows). Mesmo assim, temos uma série de comandos e passos ha executar: Download, instalação, configuração…</p><p>Pra resolver esse problema, criei o Super Bash Helper!</p><h4>O que é Super Bash Helper?</h4><p>É que um arquivo “.bash_aliases”, customizado com diversas funções para instalação de programas e alguns <em>aliases</em>. Dessa forma, é possível instalar os programas que você precisa, executando apenas um comando.</p><h4>Como utilizar</h4><ul><li>Faça o download do arquivo (apresentado no fim do artigo);</li><li>Salve o arquivo na <em>home</em> do seu Linux<strong>**</strong>;</li><li>Se você tiver algum terminal de comando aberto, feche e abra novamente;</li><li>Execute “sbstatus” comando.</li></ul><p>No terminal, você deve ver algo parecido com a imagem abaixo.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/545/1*9pVfQevVEp0OV6swC4CyGQ.png" /></figure><p>Para instalar os programas, execute o comando:</p><pre><strong>~$ </strong>sbsetup_all</pre><p>Pronto! Agora é só tomar um café rápido.</p><p>Você pode acessar o código do arquivo (no fim do artigo), e verificar todos os <em>aliases</em> e funções disponíveis. Dúvidas e sugestões são sempre bem vindas.</p><p>Obrigado</p><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/b314959b51869ffe10a21ba097ba2b03/href">https://medium.com/media/b314959b51869ffe10a21ba097ba2b03/href</a></iframe><p><strong>**</strong> Tenho utilizado esse script no Ubuntu 18.04.4 LTS (bionic) e funciona sem problemas.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=c7af6c4c1d3" width="1" height="1" alt=""><hr><p><a href="https://medium.com/testbean/super-bash-helper-c7af6c4c1d3">Super Bash Helper</a> was originally published in <a href="https://medium.com/testbean">Test Bean</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Introdução simples e rápida sobre Agile Testing]]></title>
            <link>https://medium.com/testbean/cartas-sobre-agile-testing-chap-1-1-af3eecc9aded?source=rss----9837edbd1a4f---4</link>
            <guid isPermaLink="false">https://medium.com/p/af3eecc9aded</guid>
            <category><![CDATA[agile-testing]]></category>
            <category><![CDATA[agile]]></category>
            <category><![CDATA[software-testing]]></category>
            <dc:creator><![CDATA[Danilo Feijó]]></dc:creator>
            <pubDate>Wed, 13 Feb 2019 02:29:34 GMT</pubDate>
            <atom:updated>2019-04-23T23:24:56.319Z</atom:updated>
            <content:encoded><![CDATA[<h3>Cartas sobre Agile Testing — Chap 1.1</h3><p>Esse post é uma interpretação pessoal e objetiva de parte do livro <a href="https://agiletester.ca/agile-testing/">“Agile Testing: A Practical Guide for Testers and Agile Teams”</a> e tem o objetivo de buscar, reforçar e compartilhar conhecimento.</p><p>Escrito por <a href="https://twitter.com/lisacrispin">Lisa Crispin</a> e <a href="https://twitter.com/janetgregoryca">Janet Gregory</a> em 2009, o livro é referência na área de QA. Leitura obrigatória para testers e outros membros de times ágeis.</p><h3>O que veremos nesse post</h3><p>Apresentaremos a definição básica sobre Desenvolvimento Agile e introdução sobre Agile Testing. Vamos lá!</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*lfTka1uJG6faKhxRwVfBBA.png" /></figure><h3>Desenvolvimento Agile</h3><p>A palavra “Agile” contém diferentes significados, mas uma forma de definir “Desenvolvimento Ágil” é analisando o <a href="http://www.manifestoagil.com.br/index.html">Manifesto Ágil</a>:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/821/1*264-IEgV7h9tZpijj3zi9A.png" /><figcaption>Descrição da definição e dos valores do Manifesto Ágil. Fonte: <a href="http://www.manifestoagil.com.br/index.html">Manifesto Ágil</a></figcaption></figure><p>Com valores acima descritos, podemos nos esforçar para entregar valor para o cliente, em pequenas partes com ciclos de desenvolvimento mais curtos.</p><h3>Agile Testing</h3><p>Agile Testing é uma forma diferente de pensar sobre teste de software, de modo que a qualidade deve ter um guardião, capaz de criar meios para melhorar a qualidade do time e engajar seus membros a sempre pensar sobre a cada atividade entregue.</p><p>Dessa maneira, nós testers podemos entregar um produto de qualidade que traga valor para o cliente.</p><h4>Termos utilizados para definir papeis</h4><p>Por conveniência, utilizamos termos simples para definir os papeis desempenhados em times ágeis:</p><ul><li><strong>Programador:</strong> pessoas com atividades voltadas para a escrita de código;</li><li><strong>Tester:</strong> pessoas com atividades voltadas para teste e qualidade no time;</li><li><strong><em>Desenvolvedor:</em></strong> TODOS envolvidos na entrega do software, seja “tester” ou “programador” ou outro papel que tenha ligação.</li></ul><p>A ideia não é diminuir ou menosprezar papeis. Todo membro de um time ágil deve focar sempre na entrega de um produto de qualidade que traga valor para o cliente. Mesmo que você pode se reconheça em um dos termos (por exemplo programador), mas não quer dizer que você fará apenas atividade desse termo.</p><h4>Mais que uma prática de teste</h4><p>Muitas práticas utilizadas em times ágeis que estão ligadas a teste, mas isso não faz com que o Agile testing seja uma técnica de teste.</p><p>Praticas como <a href="https://medium.com/@mateus1198/teste-de-unidade-e-teste-de-integra%C3%A7%C3%A3o-o-que-s%C3%A3o-de58d7a3d3d2">TDD e Teste Integração</a> podem ser utilizadas tanto por times Ágeis quanto <em>não-Ágeis</em>, pois são ótimas opções para a prevenção de bugs, mas a simples aplicação de tais técnicas, não transforma um time comum em um time ágil.</p><p>O Agile Testing engloba um contexto maior, envolve uma mudança de mindset de todo o time, deve estar presente em todas as fases de desenvolvimento, e não só entre o desenvolvimento do código e a entrega para validação do cliente. Por isso, não consideramos Agile Testing uma prática.</p><h3>Testes dentro de um time Agile não é Agile Testing</h3><p>Quando falamos em “teste”, devemos pensar em testes que critiquem o produto e foquem em descobrir qualquer <em>gap </em>no produto final antecipadamente.</p><p>Para ajudar a atingir esse objetivo, temos diversos tipos de teste: unidade, componente, funcional, sistema, carga, performance, segurança, stress, usabilidade, exploratório, end-to-end. Todos podem ser uma boa opção para um projeto (seja Agile ou não).</p><p>Alguns desses tipos de teste são Agile por natureza (testes exploratórios, por exemplo), mesmo que utilizados em um projeto Agile. Mesmo assim, apenas aplicar um tipo de teste Agile no projeto, não nos permite considerar que estamos praticando Agile Testing. Por isso não consideramos Agile Testing um tipo de teste.</p><h3>Resumo</h3><p>Apresentamos valores do Desenvolvimento Agile e qual foco buscamos atingir com esses valores. Mostramos definição sobre o que é (e o que <strong>não</strong> é) Agile Testing. Também mostramos valores e termos utilizados para identificar os membros de um time Agile.</p><p>Obrigado.</p><h4>Links Bacanas</h4><ul><li><a href="https://www.devbridge.com/articles/are-we-quality-assurance-or-testers/">Are we quality assurance or testers?</a></li><li><a href="https://medium.com/fcamara-hpt/a-vida-de-um-analista-de-qualidade-qa-em-um-time-de-alta-performance-d2fc874cb552">A vida de um Analista de Qualidade (QA) em um time de Alta Performance</a></li><li><a href="https://www.planetgeek.ch/2014/10/08/sketch-note-agile-bodensee-2014-agile-testing-michael-palotas/">Sketch note: Agile Bodensee 2014 - Agile Testing - Michael Palotas</a></li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=af3eecc9aded" width="1" height="1" alt=""><hr><p><a href="https://medium.com/testbean/cartas-sobre-agile-testing-chap-1-1-af3eecc9aded">Introdução simples e rápida sobre Agile Testing</a> was originally published in <a href="https://medium.com/testbean">Test Bean</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[XPath na prática — em 5 minutos]]></title>
            <link>https://medium.com/testbean/xpath-na-pr%C3%A1tica-em-5-minutos-957b76beba5?source=rss----9837edbd1a4f---4</link>
            <guid isPermaLink="false">https://medium.com/p/957b76beba5</guid>
            <category><![CDATA[test-journey]]></category>
            <category><![CDATA[test-automation]]></category>
            <category><![CDATA[html]]></category>
            <category><![CDATA[software-testing]]></category>
            <dc:creator><![CDATA[Danilo Feijó]]></dc:creator>
            <pubDate>Sat, 14 Jul 2018 03:24:00 GMT</pubDate>
            <atom:updated>2020-02-12T23:16:00.334Z</atom:updated>
            <content:encoded><![CDATA[<h4>Vamos escrever os primeiros XPaths de forma simples e prática</h4><p>Já falamos sobre a parte teórica em um <a href="https://medium.com/test-journey/xpath-nos-testes-teoria-b%C3%A1sica-88d47529773a">post anterior</a>. Agora vamos praticar e escrever os primeiros XPaths.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*58HUglFbpbQm935GgsWPXg.jpeg" /></figure><h3>Montando o Ambiente</h3><p>Antes de começar, vamos preparar o ambiente que será utilizado para a parte prática. <a href="https://gist.github.com/danilofeijo/523bb25ccc194036016d2970de5af393">Baixe aqui, o arquivo HTML</a> e abra-o em seu navegador. Você verá algo parecido com a imagem abaixo:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/654/1*SzdsM-pp-iDIy5JCL6F-Jw.png" /><figcaption>Tabela simples de 5 colunas e 4 linhas composta por diversos elementos HTML. <strong>Use essa imagem como referência visual para localizar os elementos da tabela</strong></figcaption></figure><h3>Steps para montar um XPath</h3><p>Vamos seguir quatro steps para guiar nos guiar na criação de XPaths:</p><ol><li>Escolher o elemento no browser;</li><li>Encontrar o elemento pelo Dev Tools do Chrome [o famoso f12];</li><li>Analisar atributos e elementos ligados ou próximos ao elemento;</li><li>Montar seu Xpath :)</li></ol><p>Utilize esses steps como guia para criar um novo XPath.</p><h3>Exemplo 1 — Utilizando o atributo “id”</h3><p>O atributo “id” é sempre a melhor opção para montar XPaths, pois por boa prática, id’s devem ser únicos, o que facilita nossa busca.</p><h4><strong>1- Escolher o elemento no browser</strong></h4><p>Vamos selecionar o botão “Comprar Açaí”, que é o primeiro botão localizado na coluna “Ação”.</p><h4>2- Encontrar o elemento pelo Dev Tools do chrome [f12]</h4><p>Clique com o botão direito no botão “Comprar Açaí” e depois na opção “Inspecionar elemento”. O Chrome Dev Tools é aberto e o nosso elemento está selecionado:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/934/1*xsFfRTD7DPIHO7sH4Ay_YA.png" /><figcaption>Tabela HTML com Dev Tool do Chrome aberto e o botão “Comprar Açaí” em destaque</figcaption></figure><h4>3- Analisar atributos e elementos relacionados</h4><p>Nosso botão é um elemento com a <strong>tag input</strong>,<strong> </strong>do <strong>tipo “button”</strong> e possui o <strong>ID “ComprarAcai”</strong>. Guarde essas informações:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/936/1*1sGZpH5po0aVRXdVwPxK8A.png" /><figcaption>Chrome Dev Tool com elemento do botão “Comprar Açai” selecionado e atributo ID em destaque</figcaption></figure><p>Como falamos a pouco, o atributo ID é a melhor opção para montar XPaths. Vamos utiliza-lo na criação do nosso primeiro Xpath.</p><h4>4- Montar seu Xpath :)</h4><p>Vá para o Dev Tool e utilize o atalho <strong>Ctrl-F</strong> para abrir a barra de pesquisa no rodapé:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/971/1*GHTmtiZXbkqvgsrax9Zvxw.png" /><figcaption>Barra de pesquisa em destaque no rodapé. Possibilita a busca de elementos por XPaths</figcaption></figure><p>Na barra de pesquisa, digite <strong>“//”</strong>. Isso significa que você iniciou uma busca a partir de qualquer nível da página web.</p><p>Adicione <strong>“</strong>input<strong>” (</strong>que é a tag do nosso elemento), teremos <strong>“//input”.</strong> O Dev Tool retornará todos os elementos com tag “input”. São 9 no total:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/966/1*L1qApHf-0HgsbTXQqfWyoA.png" /><figcaption>Dev Tool com a pesquisa iniciada e retornando 9 elementos até o momento</figcaption></figure><p>Agora precisamos especificar melhor a nossa busca. Adicione <strong>“</strong>[]<strong>”</strong> (colchetes) e teremos <strong>“//input[]”</strong>.</p><p>Adicione <strong>“</strong>@id<strong>”</strong> dentro dos colchetes. Temos então <strong>“//input[@id]”</strong>. Agora o Dev Tool retornará todos os elementos com a tag “input” que tenham o atributo “id”. Reduzimos os resultados de 9 para 3:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/965/1*6F-5KQ-8jMGUlTqWN0eCig.png" /><figcaption>Com a busca mais específica, o resultados é mais restrito</figcaption></figure><p>Para finalizar, adicione <strong>“</strong>=ComprarAcai<strong>”</strong> (valor do ID do elemento), após o “@id”. Temos então <strong>“//input[@id=</strong>‘<strong>ComprarAcai</strong>’<strong>]”</strong>.</p><p>Agora o Dev Tool retornará somente elementos com a <strong>tag “input”</strong>,<strong> </strong>que tenham o <strong>atributo “id” </strong>cujo com o <strong>valor “=ComprarAcai”</strong>.</p><h3>Filtrar com atributos html</h3><p>Assim como utilizamos o atributo “<strong>id” </strong>para fazer a busca, podemos fazer uso de atributos como <strong>“class”</strong>, <strong>“name”</strong>, <strong>“type”</strong> entre outros.</p><h3>Exemplo 2 — Utilizando mais de um atributo</h3><p>Na falta do atributo id, além de utilizar outros atributos, é possível fazer uma busca utilizando dois ou mais atributos</p><h4>1- Escolher o elemento no browser</h4><p>Vamos até a coluna “Combo”, e selecionar o checkbox da última linha.</p><h4>2- Encontrar o elemento pelo Dev Tools do chrome [f12]</h4><p>Clique com o botão direito sob o elemento, e depois, em “Inspecionar elemento”.</p><h4>3- Analisar atributos e elementos relacionados</h4><p>Nosso checkbox é um elemento com a <strong>tag input</strong>, do <strong>tipo “checkbox”</strong>, com <strong>name “comboBaiano” </strong>e não possui ID. Dessa vez, usaremos mais de um atributo para selecionar o elemento.</p><h4>4- Montar seu Xpath :)</h4><p>Abra a barra de pesquisa do Dev Tool (<strong>Ctrl-F</strong>)<strong> </strong>e comece a montar o XPath…</p><p><strong>Step 1 —</strong> Adicione <strong>“//input” </strong>para listar todos os elementos com a tag input. Temos 9 resultados.</p><p><strong>Step 2 — </strong>Insira os colchetes para especificar a pesquisa. Agora temos <strong>“//input[]”</strong>.</p><p><strong>Step 3 —</strong> Adicione “@type=’checkbox&#39;” dentro dos colchetes.</p><p>Nesse momento temos o XPath <strong>“//input[@type=’checkbox’]”</strong>, que retorna 3 elementos. Para especificar melhor, vamos adicionar a pesquisa pelo atributo <strong>name </strong>em nosso XPath.</p><p><strong>Step 4 — </strong>Adicione novos colchetes (na frente do seu XPath atual), e dentro deles adicione “@name=’comboBaiano’”.</p><p>Agora temos um XPath que retorna apenas um resultado:</p><p><strong>//input[@type=’checkbox’][@name=’comboBaiano’]</strong></p><h3>Para encerrar</h3><p>Com os exemplos acima, você já está apto a criar seus primeiros XPath em qualquer website/aplicação web. Sugestões, comente no post :)</p><h3>Ferramentas recomendadas</h3><p><a href="https://developer.chrome.com/devtools">Chrome DevTools - Chrome Developers</a></p><p>O Dev Tool faz parte do Navegador Chrome. É a ferramenta básica para começar escrever os primeiros XPath.</p><p><a href="https://chrome.google.com/webstore/detail/css-and-xpath-checker/aoinfihhckpkkcpholfhmkeplbhddipe">CSS and XPath checker</a></p><p>O CSS and XPath checker ajuda a validar um XPath criado. Se o XPath estiver “ok”, o elemento na tela ficará destacado em vermelho. Muito recomendado</p><h3>Referências</h3><p>Conteúdos que uso como referência quando o assunto é XPath. A leitura do primeiro e do terceiro é praticamente obrigatória, enquanto o segundo vale salvar no seu <em>favoritos</em> para consulta no seu dia-a-dia.</p><ul><li><a href="http://www.qualister.com.br/blog/identificando-elementos-com-xpath">Blog &gt; Identificando elementos com XPath</a></li><li><a href="https://devhints.io/xpath">Xpath cheatsheet</a></li><li><a href="http://www.qalab.com.br/novo/blog/como-avaliar-a-utilizacao-de-locators-nos-testes-de-automatizados-de-interface/?utm_source=ReviveOldPost&amp;utm_medium=social&amp;utm_campaign=ReviveOldPost">Como avaliar a utilização de locators nos testes automatizados de interface</a></li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=957b76beba5" width="1" height="1" alt=""><hr><p><a href="https://medium.com/testbean/xpath-na-pr%C3%A1tica-em-5-minutos-957b76beba5">XPath na prática — em 5 minutos</a> was originally published in <a href="https://medium.com/testbean">Test Bean</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[XPath nos testes — teoria básica]]></title>
            <link>https://medium.com/testbean/xpath-nos-testes-teoria-b%C3%A1sica-88d47529773a?source=rss----9837edbd1a4f---4</link>
            <guid isPermaLink="false">https://medium.com/p/88d47529773a</guid>
            <category><![CDATA[html]]></category>
            <category><![CDATA[test-automation]]></category>
            <category><![CDATA[software-testing]]></category>
            <category><![CDATA[test-journey]]></category>
            <dc:creator><![CDATA[Danilo Feijó]]></dc:creator>
            <pubDate>Sat, 14 Jul 2018 03:22:51 GMT</pubDate>
            <atom:updated>2017-08-20T01:09:42.222Z</atom:updated>
            <content:encoded><![CDATA[<h4>Saiba o que é, de forma básica e teórica</h4><p>Li muitas vezes pela internet à fora (em blogs ou fóruns com discussões e dúvidas relacionadas), mas nunca entendi o que, de fato, é Xpath.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/819/1*N_4j_B7DSUgNubhL1mZkvw.jpeg" /></figure><p>Sempre me fazia perguntas do tipo: <strong>“O que é XPath?”</strong>, <strong>“Para que serve?” </strong>ou ainda <strong>“Onde utilizar XPath?”</strong>.</p><p>Hoje este é um assunto mais claro para mim, e já consigo responder estas perguntas.</p><h4>O que é XPath?</h4><p>XPath é uma linguagem de consulta, utilizada para identificar tags/elementos específicos em documentos XML (o que inclui <a href="https://developer.mozilla.org/en-US/docs/Web/HTML">HTML</a>).</p><h4>Para que serve?</h4><p>Com XPath, você consegue identificar um ou mais elementos presentes em uma página web.</p><p>Botões, links, imagens, etc… Todos podem ser identificados, mesmo que não estejam visíveis, em um primeiro momento (<a href="http://the-internet.herokuapp.com/hovers">elementos que só aparecem após um hover</a>, por exemplo).</p><h4>Onde utilizar Xpath?</h4><p>Em Teste de Software, utilizamos XPath durante a automação de testes funcionais web.</p><p>Para fazer uma interação com um elemento de uma página, o <em>framework de teste</em> (ex: Cucumber) precisa saber como encontrar tal elemento. O XPath, é o código que fala como encontrar o elemento dentro da página.</p><p><strong>Exemplo: </strong>Para clicar no botão “Confirmar” de uma página, utilizamos XPath para informar ao <em>framework de teste </em>qual o caminho ele deve seguir [dentro da página] para localizar o botão.</p><p>De forma simples e básica é isso. Você também pode encontrar informações mais detalhadas em páginas como <a href="http://www.qualister.com.br/blog/identificando-elementos-com-xpath">Qualister</a>, <a href="https://en.wikipedia.org/wiki/XPath">Wikipedia</a>, <a href="https://www.w3.org/TR/xpath/">W3C</a>, e <a href="https://www.w3schools.com/xml/xpath_intro.asp">w3schools</a>.</p><p>Até aqui vimos o lado teórico. Veja o post “<a href="https://medium.com/test-journey/xpath-na-pr%C3%A1tica-em-5-minutos-957b76beba5">XPath na prática — em 5 minutos</a>” e comece a criar os primeiros XPaths.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=88d47529773a" width="1" height="1" alt=""><hr><p><a href="https://medium.com/testbean/xpath-nos-testes-teoria-b%C3%A1sica-88d47529773a">XPath nos testes — teoria básica</a> was originally published in <a href="https://medium.com/testbean">Test Bean</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>