Curso Gratuito de Automação de Testes Para Iniciantes

Disponível no
Youtube

 

Automatizando Testes com Robot Framework

robot framework

Automatizando Testes com Robot Framework

Olá pessoal! Nesse período de quarentena, acredito que a grande maioria das pessoas está buscando aprender coisas novas, e comigo não foi diferente. Então, fui em busca de aprender novas tecnologias e ferramentas. E foi aí que conheci o Robot Framework, que despertou minha curiosidade por ser um framework simples e de fácil aprendizado.

 

O Robot Framework é uma estrutura genérica de automação de teste (open source) para testes e desenvolvimento orientado a testes de aceitação. É uma estrutura de teste orientada por palavras-chave que usa a sintaxe tabular dos dados de teste, gravado em Python. Com Robot Framework, é possível automatizar testes web, de API, mobile. Para saber mais, clique aqui . Para fins de exemplo, criei cenários de testes automatizados de login em uma página web fictícia https://www.saucedemo.com/.

 

Para iniciarmos a automação de testes com Robot Framework, é necessário a instalação do Python 3, Console Emulator (versão full) e Visual Studio Code (que possui uma extensão para o uso do Robot Framework).

 

Criando o projeto:

Na pasta C:, crie uma pasta com o nome do projeto, no meu caso eu nomeei de teste-web. Dentro dessa pasta, crie outra pasta com nome da aplicação ou outro nome que queira colocar (aqui no meu caso eu coloquei o nome de swaglabs, aplicação na qual irei realizar os testes).

Feito isso, abra o Console Emulator, e vá até a ultima pasta criada, e abra a pasta no VS Code.

 

Instalando extensões no VS Code:

Com o VS Code aberto, se faz necessário instalar algumas extensões para uso do Robot Framework, são elas: Python, Robot Framework, Material Icon Theme e Hyper Term Theme (as duas ultimas extensões se referem a ícones e estilização de textos).

 

Ao digitar @installed no campo de busca das extensões, verá todas as extensões instaladas:

 

Instalando as bibliotecas necessárias: Selenium e Requests

A instalação das bibliotecas são necessárias para termos acesso as keywords que serão utilizadas para a construção da nossa automação, nesse caso, para testes web.

 

Abra o console emulator novamente (não precisa estar na pasta do projeto) e digite:

 

pip install robotframework

 

pip install –upgrade robotframework-seleniumlibrary

 

Lembrando que o Chrome Driver deve estar na pasta C:Windows, e a versão deste deve ser compatível com a versão do navegador Chrome instalado.

 

Criando os Tests Cases e Resources.

Para ficar melhor organizado, criei duas pastas no projeto, resources e tests. Começando pela pasta tests, criei o arquivo login.robot, que se trata da funcionalidade que será testada, nesse caso, o login do sistema. Os cenários foram escritos em BDD (desenvolvimento guiado por comportamento), o que torna os testes muito mais simples para entendimento.

 

Settings: Configurações do Test Case.

Documentation: Descrição da suíte e funcionalidade que será testada

Library: Importação da biblioteca SeleniumLibrary para utilização do Selenium ao rodar o teste.

Resource: Importação do arquivo /resources/kws.robot que contém todas as Keywords necessárias para o nosso teste.

Test Setup: tudo o que é executado antes de cada Test Case

Test  Teardown: tudo o que é executado ao final de cada Test Case

 

O Robot Framework executa tudo o que está abaixo de Test Cases, os cenários podem ser separados por tags, mas nesse caso para fins de exemplo preferi executar todos numa única vez.

 

Já na pasta resources, criei o arquivo kws.robot, que é onde ficam as Keywords e mapeamento de elementos, para cada “step” de nossos casos de teste. Para saber mais sobre as Keywords, acesse aqui: https://robotframework.org/SeleniumLibrary/SeleniumLibrary.html

 

Os “hooks”, são ganchos que podemos utilizar para os casos de testes em geral, como por exemplo: abrir e fechar navegador, capturar uma imagem.

 

Após a implementação, basta acessar o console emulator, ir até a pasta do projeto, e digitar:

 

robot tests\login.robot

(tests: pasta do projeto, login.robot: arquivo com o test case implementado).

 

É claro que dá pra estruturar o projeto de forma mais completa, entretanto essa foi só uma forma simples de demonstrar de como é fácil usar o Robot Framework e sair automatizando.

 

Quem quiser acessar o projeto, está disponível aqui.

 

Espero ter contribuído de alguma forma.

 

Créditos ao QANinja, este tutorial é uma consolidação do conhecimento obtido através dos cursos.