Slides da palestra de introdução ao Robot Framework - Framework de automação de testes baseado em keyword-driven. Apresentado no evento 6º GUTS-SC em 28/11/2017.
1. automação de testes com
robot framework
Introdução ao framework baseado em keywords
para automação de testes com linguagem
natural
2. agenda
➔ Sobre Nós
➔ Abordagem keyword-driven
➔ O Robot Framework
◆ Sobre
◆ Linguagem Natural
◆ O que preciso?
◆ Testes
◆ Libraries
◆ Estrutura de uma suíte
➔ Exemplo WEB
➔ Exemplo API
3. sobre nós
Mayara Fernandes
7 anos na área de testes de
software, bacharel em Ciência da
Computação, CTAL-TA, experiência
com testes manuais e automatizados
de desktop, web e API.
Paola Machado
5 anos na área de testes de
software, formada em Análise e
Desenvolvimento de Sistemas,
experiência com testes funcionais
manuais e automatizados de web e
API e testes de performance.
ammmayara@hotmail.com
github.com/mayribeirofernandes
linkedin.com/in/mayfernandes
paolasmachado@gmail.com
linkedin.com/in/paola-machado-
67788134
4. automação de testes com keyword-driven
- É uma abordagem de testes automatizados/
testes de tabela/teste baseado em ação.
- Testes de aceitação (Acceptance Tests).
- A ferramenta de automação oferece um conjunto
de palavras-chaves.
- As palavras-chaves são em alto nível
(praticamente em linguagem nativa) que
representa uma ação do usuário.
5. automação de testes com keyword-driven
- Encapsula a implementação do teste
- Bom para testadores não técnicos
- Reutilização
- Fácil aprendizado
- Fácil escrita e leitura dos testes
Vantagens...
6. automação de testes com keyword-driven
Implementação (Python com Selenium WebDriver):
def setUp(self):
self.driver = webdriver.Firefox()
self.driver.implicitly_wait(20)
self.base_url = "https://www.facebook.com/"
self.verificationErrors = []
self.accept_next_alert = True
Keyword (RobotFramework com SeleniumLibrary):
Open Browser https://www.facebook.com/ firefox
Exemplo: Abrir uma página web
7. o robot framework -- sobre
Framework desenvolvido em Python, inicialmente
para a Nokia. É uma estrutura para automação de
testes de aceitação (você pode ter ouvido ATDD
também 😉) baseado em keyword-driven.
Possui sintaxe de dados tabular fácil de usar e
permite que usuários utilizem e criem bibliotecas
em Python.
Não! Você não precisa saber Python para usar, já
existem diversas bibliotecas com keywords
prontinhas para você escrever seus testes!!!
8. o robot framework -- linguagem natural
Por padrão, as bibliotecas (libraries) são escritas em
inglês, pode até parecer técnico por isso, mas se você
traduzir, verá que é uma linguagem natural, em inglês, mas
natural…
Os seus cenários/casos de teste podem ser escritos em pt-
br, inclusive com acentuação...
9. o robot framework -- o que preciso?
O que preciso saber para usar o Robot Framework?
- Lógica Básica de Programação:
- Variáveis
- Argumentos
- Linha de comando
- Inglês Técnico
O que preciso ter para usar o Robot Framework?
- Python instalado
- Um editor de código (PyCharm, Visual Code,
ATOM, etc)
10. o robot framework -- testes
- Existem libraries que suportam testes para:
- Web (Selenium)
- API (Requests)
- Mobile (Android/IOS/Appium)
- GUI (AutoIT/Sikuli)
- Estilos de testes:
- Keyword-driven (formato procedural)
- Data-driven (tabelas de dados)
11. o robot framework -- Libraries
Uma library é um conjunto de keywords já implementadas
(Python) para realizar determinadas funcionalidades. Para
automatizar páginas web, por exemplo, utilizamos a library
chamada SeleniumLibrary.
Como citado, você não precisa saber Python, a
comunidade cria e mantém as libraries para nós,
nós somente precisamos saber usá-las.
Toda library tem a sua documentação, onde nós
podemos pesquisar e saber como funcionam as
keywords disponíveis dessa library.
12. o robot framework -- estrutura das suítes
RESOURCES TESTS
Libraries
Variables
Keywords (libraries)
PageObjects
Resources
Casos de Teste (steps)
Cenários (BDD)
Suíte de Testes