O Robot Framework é um framework de automação genérico criado em Python, que permite criar tanto Testes Automatizados quanto scripts para RPA (Robotic Process Automation) - aqui no Guia iremos focar na parte de automação de testes, mas tudo pode ser replicado para RPA. Os testes criados pelo Robot Framework, se encaixam na camada de Testes de Aceitação (ATDD), porém, dependendo da forma como script é criado, podemos utilizá-lo para Monitorias Sintéticas, Regressão Visual, Testes de Mensageria dentre outros.


Bibliotecas

Uma das principais virtudes do Robot Framework é a capacidade de estender suas funcionalidades por meio de Bibliotecas. As Bibliotecas, que geralmente são desenvolvidas em Python (mas também podem ser desenvolvidas em JAVA), são um dos principais recursos para ampliar o leque de possibilidades na criação de scripts de testes. Essas Bibliotecas fornecem um conjunto de funcionalidades extras, adicionando novas Keywords e recursos extras ao Robot Framework.




Iremos nos aprofundar melhor em outro módulo no tema Biblioteca

Keywords

De uma forma bem simples, as Keywords são funções escritas em Python que executam uma determinada ação. Como no exemplo abaixo



No exemplo acima, a Keyword "Generate Random String" é a representação em uma Escrita de Alto Nível da função "generate_random_string".

O importante aqui é perceber que, todas as 15 linhas de código da função em Python foram encapsuladas, na visão do Robot Framework, em apenas 1 linha de código. Isso se torna importante, por ser parte da heurística principal do Robot Framework. Para a maioria dos problemas cotidianos que temos durante a criação de uma automação de testes, existe uma grande probabilidade de já existir uma biblioteca que resolva o problema para você. E se não existir, você pode criar personalizada para a sua necessidade, e reutilizar a Keyword criada em todo seu projeto de automação.

Iremos nos aprofundar melhor em outro módulo no tema Keywords


Escrita de Alto Nível

A Escrita de Alto Nível é uma das principais características do Robot Framework.  Essa abordagem permite escrever casos de teste em uma linguagem fácil de entender e próxima da linguagem natural, tornando o processo de automação mais acessível e legível, até para que não conhece o Robot Framework.

Dois dos principais aspectos da Escrita de Alto Nível são:

  • Sintaxe Simples: O Robot Framework utiliza uma sintaxe simples e clara, com Keywords significativas e legíveis.

  • Explicitude: O Robot Framework enfatiza a importância da clareza e explicitude nos casos de teste. Isso significa que é preferível ter testes mais explícitos e detalhados, para que qualquer pessoa que leia o caso de teste possa entender facilmente o que está sendo testado e quais são os critérios de sucesso.

Em resumo, nada impediria que você crie uma keyword como a do exemplo abaixo.

*** Settings ***
Library  AppiumLibrary

*** Test Case ***
Cenário 1
	Clicar no Botão Enviar

*** Keyword ***
Clicar no Botão Enviar
	Wait Unitl Element Is Visible
    ... id=btn-1
    
    Click ELement
    ... id=btn-1

Escrita dos Cenários de Teste

Diferente de alguns frameworks, onde você é "obrigado" a escrever os testes utilizando um técnica específica, o Robot Framework segue um caminho diferente. Você pode usar tanto Gherkin, quanto outras técnicas como Keyword-Driven ou Data-Driven. Dependerá da sua preferência e de como a técnica que você escolherá se adequará à suas necessidades no projeto.

No final, todas terão resultados semelhantes. Como nos exemplos abaixo:


Keyword-Driven

*** Test Case ***
Realizar Login
    Abrir Browser na tela de Login
    Inserir Username  demo
    Inserir Senha  	  demo123
    Clicar no botão Logar
    Pagina de Bem Vindo deverá ser exibida

Gherkin

*** Test Case ***
Realizar Login
    Dado que eu esteja na tela de login     Quando inserir o usuário "demo" e senha "demo123" Então a pagina de Bem Vindo deverá ser exibida

Nos dois exemplos, o resultado serão iguais.

Conclusão

O Robot Framework é uma escolha muito confiável para criar projetos de automação de testes,. Como ele podemos criar de casos de teste eficientes, reutilizáveis e escaláveis e acima de tudo utilizando uma sintaxe intuitiva que permite que qualquer um entenda e ajude na criação dos testes.

---

E ai, curtiu?
Lembre-se de comentar aqui sua opinião. E se tiver alguma dificuldade para entender algum ponto, deixa também nos comentários, que ajudarei você no que for preciso!

Clique na imagem abaixo para ir para o tópico "Estrutura de Testes do Robot Framework"