ScanAPI
Automatização de Testes de Integração para a sua API
Camila Maia
1
TDC Florianópolis
Junho de 2020
Slide 2
Slide 2 text
Motivação
Tudo começou numa bela semana de firefighter…
2
Slide 3
Slide 3 text
Eu trabalho na...
3
Slide 4
Slide 4 text
Quem sou eu?
4
- Desenvolvedora Backend
- Formada em Sistemas de Informação na UFSC
- Moro agora em Porto Alegre, mas sou de Floripa
- Entrei na área em 2010
- Maior experiência com Python e Ruby
- Estava na organização do PyJamas ano passado
Slide 5
Slide 5 text
Motivação
Tudo começou numa bela semana de firefighter…
5
Slide 6
Slide 6 text
Motivação
Erros de integração
6
- Cliente mandando
campos diferentes do
esperado
- Frontend recebendo
campos diferentes do
esperado
Motivação
Dificuldade em recriar o cenário
8
/reservar/:id_do_assento
id_do_voo?
id_da_aeronave?
id_do_passageiro_id?
Aeronave está disponível?
????
Slide 9
Slide 9 text
Motivação
Dificuldade em recriar o cenário
9
Slide 10
Slide 10 text
No content
Slide 11
Slide 11 text
O quê a ScanAPI se propõe a fazer pela
sua API?
11
- Framework de código aberto
- Escrito em Python
1. Fornecer uma documentação “Ao Vivo”
2. Possibilitar a implementação de testes de Integração
Slide 12
Slide 12 text
PokéAPI: https://pokeapi.co
$ http https://pokeapi.co/api/v2/pokemon/
Como funciona?
Exemplo: PokéAPI
12
Como funciona?
Encadeamento ⛓
24
- Pegar detalhes de um Pokémon
- Neste caso o dado é “estático”, mas poderia não ser
- Nem sempre você sabe o quê vai ser retornado no endpoint
de list
- https://pokeapi.co/api/v2/pokemon/bulbasaur
Como funciona?
E tem mais
27
- Independente de linguagem!
- Especificação da API também é aceita em JSON
- Variável de Ambiente
- Esconder dados sensitivos no relatório
- Especificação da API em vários arquivos
- Templates Customizados
Slide 28
Slide 28 text
Posso usar?
Com certeza!
28
Slide 29
Slide 29 text
Próximos passos
E o futuro?
29
- Apresentação no dia 24 de
Julho
- Sessão de Sprint no fim de
semana 25 e 26 de Julho
(de graça!)
Mais informações
Slide 30
Slide 30 text
Próximos passos
E o futuro?
30
- Outros métodos HTTP (além de GET, POST, PUT, PATCH, DELETE)
- Visualização de JSON
- Documentação + Tutoriais
- Website
- GitHub Action
E se….
- OpenAPI
Slide 31
Slide 31 text
Por que colaborar com a ScanAPI?
Chega junto!
31
- Todas as áreas: automação, backend, front, design
- “Python Puro”
- Entender como uma lib funciona
- Cobertura de testes > 90%
- Automação
Slide 32
Slide 32 text
Por que colaborar com a ScanAPI?
Chega junto!
32
How Open Source Changed My Life with Max Stoiber
Slide 33
Slide 33 text
github.com/scanapi ⭐
33
Slide 34
Slide 34 text
SpaceDevs
Pessoas > Tecnologia
34
spacedevs.com.br Link Direto