Download udemy, inc. automação de testes com robot framework - básico

robozinho estudioso

Este artigo tem como objetivo apresentar como podemos escrever scripts para automação de testes de uma forma bem simples e de baixa complexidade usando o Robot Framework.

Após realizar um pequeno curso de introdução ao robot framework, procurei me aprofundar um pouco mais nos testes web e mobile, o resultado até o momento tem sido bem satisfatório. 😍

O conteúdo que será apresentado neste artigo está disponível no meu github //github.com/caioandrian/curso_robot_framework.

Fiquem à vontade para clonar, testar e também para apontar melhorias.😉

Importante: “As opiniões aqui colocadas refletem a opinião pessoal do autor e não necessariamente a opinião da Compasso UOL”.

Quais são as vantagens de usar o robot framework?

  • A linguagem utilizada é fácil de entender, inclusive por pessoas que não possuem tanto conhecimento técnico em programação.
  • A distribuição do código por seções “Settings, Variables, Test Cases e Keywords” nos ajudam a construir um código bem organizado desde o início.
  • Aumento da produtividade e a entrega dos casos de testes.
  • Algumas bibliotecas possuem a documentação bem organizada e acessível.
  • Existem várias bibliotecas disponíveis que podem nos auxiliar para atingir diferentes objetivos, por exemplo, para teste web, mobile, desktop, etc.
  • Fácil de instalar.
  • Você também pode criar suas próprias bibliotecas usando a linguagem Python!

E quais são as desvantagens?

  • A documentação do robot framework não é tão clara e objetiva [//robotframework.org].
  • A comunidade é relativamente pequena, se comparado a outros frameworks, o que pode dificultar a busca por ajuda em algumas situações.
  • Existem poucos cursos que abordam o robot framework ou como podemos usar definitivamente suas bibliotecas.

Entendendo um pouco mais sobre a sintaxe com seções do Robot Framework:

  1. Na seção chamada ** Settings ** temos a definição das páginas ou recursos que serão utilizados para o teste.
  2. Ainda não seção de Settings, declaramos as keywords que serão consideradas como pré-requisitos tanto para dar início a uma suíte de teste, quanto para serem executadas antes de cada caso de teste. Essa declaração é feita através do bloco contendo os nossos Setups.
  3. Já na seção de ** Test Cases ** podemos ter um ou mais casos de teste, que deverão possuir um conjunto de keywords para que seja realizado o nosso caso de teste.
  4. Na seção ** Variables ** iremos declarar as variáveis que serão utilizadas pelos nossos testes, podendo ser definidas como variáveis globais, para nosso conjunto de testes, apenas para um caso de teste ou como variáveis locais.
  5. Por fim, a seção de ** Keywords ** representa os passos que iremos realizar nos nossos casos de teste, ou seja, a construção do nosso caso de teste deverá possuir vários keywords que criamos até atingir o objetivo daquele cenário de teste. Além dessas keywords que estamos criando, também existem as keywords já existentes nas bibliotecas que estamos utilizando, essas deverão ser utilizadas para realizar alguma ação com a página, tela, sistema operacional ou com o software que estamos querendo testar.

Veja como podemos usar as seções no código, seguindo o exemplo das imagens abaixo.😃

seções com robot framework

Para esse projeto de teste, foi utilizado o design pattern Page Object e por esse motivo as seções estão separadas em dois arquivos.

Agora temos um código que pode ser lido facilmente, e o mais importante, ficou mais fácil de entender o que cada caso de teste [3] está fazendo. 😍💡

Também podemos notar que algumas keywords provenientes das bibliotecas que instalamos, contribuem imensamente para que possamos escrever um código de automação com mais rapidez e baixa complexidade.

Dica de como escrever um bom código de teste com robot framework: //github.com/robotframework/HowToWriteGoodTestCases/blob/master/HowToWriteGoodTestCases.rst

Documentação: robotframework.org/SeleniumLibrary/SeleniumLibrary.html

Requisitos:

Passos para instalação do robot framework e do selenium library:

Como configurar a abertura e o fechamento de um navegador com o selenium no robot framework:

Precisamos definir o nossos Setups para abrir e encerrar o navegador.

Exemplos de keywords utilizando o Selenium Library:

  • Select From List By Label, Select Checkbox, Select Radio Button.
  • Input Text, Click Element, Checkbox Should Be Selected, Click Link, Drag and drop.
  • Element Attribute Value Should Be, Element Text Should Be.
  • Page Should Contain Text, Page Should Contain Element.
  • Wait Until Page Contains, Wait Until Page Contains Element.
  • Get Value, Get Text, Get Title, Get Cookie.

Veja o exemplo de um caso de teste sendo executado com o robot framework e o selenium library no gif abaixo e do report em html gerado.

executando teste web com selenium e report html gerado pelo robot

Caso o gif não abra, por favor aguarde alguns segundos ou tente atualizar a página.

Documentação: //serhatbolsu.github.io/robotframework-appiumlibrary/AppiumLibrary.html

Requisitos:

Passos para instalação do robot framework e do appium library:

Passos para iniciar a ligação entre o appium e device:

Lembrete:
Para executar os testes precisa primeiro abrir o Android Studio e seu dispositivo.

Exemplo de dispositivo simulado no Android Studio

Como configurar a abertura e o fechamento de um aplicativo com o Appium no Robot Framework:

Precisamos definir o nossos Setups para abrir e encerrar a aplicação.

Exemplos de keywords que utilizando o Appium Library:

  • Swipe, Press, Long Press, Tap, Scroll, Swipe By Percent.
  • Input Text, Click Element, Click Text, Click Button.
  • Element Attribute Value Should Be, Element Text Should Be.
  • Page Should Contain Text, Page Should Contain Element.
  • Wait Until Page Contains, Wait Until Page Contains Element.
  • Get Text, Get Contexts, Switch To Context, Get Element Location, Get Element Size

Veja o exemplo de um caso de teste sendo executado com o robot framework e o appium library no gif abaixo e do log gerado.

executando teste mobile com appium e log gerado pelo robot

Caso o gif não abra, por favor aguarde alguns segundos ou tente atualizar a página.

Esses foram meus primeiros testes usando o robot framework, o projeto completo deste exemplo está no meu github.

//github.com/caioandrian/curso_robot_framework

Espero que tenham gostado.🙂

Até a próxima.

Referências Bibliográficas

ESTIVALET, Luiz Fernando. Testes Automatizados Usando Robot Framework — Módulo 1. Udemy, 2021. Disponível em: <//www.youtube.com/watch?v=W5hcHbzTjOc>. Acesso em: 10 out. 2021.Robot Framework Tips, Tricks And Tutorials. Robot Framework And Appium — Install Environment On Windows. Youtube, 2020. Disponível em: <//www.youtube.com/watch?v=W5hcHbzTjOc>. Acesso em: 16 out. 2021.Robot Framework Tips, Tricks And Tutorials. Robot Framework And Appium — Configure Devices And Emulators. Youtube, 2020. Disponível em: <//www.youtube.com/watch?v=QYT0_qgkiCw>. Acesso em: 16 out. 2021.

Robot Framework Tips, Tricks And Tutorials. Robot Framework And Appium — Open Application — AppiumLibrary. Youtube, 2020. Disponível em: <//www.youtube.com/watch?v=0a5NAJjUBbA>. Acesso em: 16 out. 2021.

Aprenda automatizar testes de aplicativos WEB e APIs com o Robot Framework

What you'll learn:


  • Você será capaz de automatizar testes de sistemas WEB e API
  • Tudo sobre o que é o Robot Framework, como ele funciona e por quê ele é tão bom no que propõe
  • Instalar tudo que for necessário para utilizar o Robot Framework
  • Definir e escrever seus primeiros casos de teste automatizados
  • Conceito de Setup e Teardown
  • Estratégias de HTML locators para testes web
  • Implementar, executar e reportar os testes no Robot Framework
  • Implementação dos testes automatizados com BDD
  • Trabalhar com variáveis, listas e dicionários
  • Trabalhar com estruturas IF, FOR e argumentos
  • API testing: Get, Post, conferências de JSON
  • Colocar a mão na massa com vários desafios práticos

*** Conteúdo do curso é compatível com a mais recente versão 4 do Robot Framework!***

Oláááá futuros robotizadores!!! Desde 2018 nosso curso está no AR aqui na Udemy, fomos os pioneiros a trazer esse conteúdo para o Brasil. Ele é simples, direto e reto!!! Um curso com classificação ótima, você aprenderá a sair do zero e se tornar mestre na automação de testes de uma vez por todas!! #AGORAVAI

Esse curso tem como principal objetivo mostrar como a automação de testes pode ser legal e fácil!! O Robot Framework propõe automação genérica de testes, ou seja, você pode automatizar sites, webapps, APIs, desktop, mobile, etc, tudo em um único framework.

Ele não exige conhecimento específico em linguagem de programação, pois o objetivo dele é tornar os testes mais reaproveitáveis e fáceis com a abordagem keyword-driven, onde qualquer tester/QA podeautomatizar mesmo sem ser muito técnico.

Neste curso te ensinarei os fundamentos básicos do framework, os passos necessáriosparaconstruir um teste automatizado, explicareias estruturas básicas que o framework disponibiliza para tornar seu teste mais completoe ao final iremos implementar duas suítes de testes: uma com Selenium testando um web app e outra com Requests testando uma APIREST.

O curso está recheado de DESAFIOS para você colocar em prática o conteúdo ensinado e sempre respondo as dúvidas de todos os alunos! Vem com a gente aprender esse framework incrível!