palestra de como testar sua api rest no grupo de teste carioca

40
Você testa suas APIs no seu dia a dia? Vamos automatizar estes testes? FREDERICO MOREIRA www.fredmoreira.com

Upload: frederico-augusto-do-carmo-moreira

Post on 12-Jan-2017

477 views

Category:

Technology


4 download

TRANSCRIPT

Page 1: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Você testa suas APIs no seu dia a dia? Vamos automatizar estes testes?

FREDERICO MOREIRAwww.fredmoreira.com

Page 2: Palestra de como testar sua API Rest no Grupo de Teste Carioca

INTERNET

DOS

TREM

Page 3: Palestra de como testar sua API Rest no Grupo de Teste Carioca

WHO AM I?var speaker = {

name : 'Frederico Moreira',description : [ 'QA Enginner @Minutrade','Organizador do Minas Testing Conference',

'Fissurado pelo o mundo JS','Entusiasta de Agile Testing','Trabalho com testes desde 2008...','Dj por Hobby','Lutando para crescer o GTS-MG''Não vivo sem uma boa cerveja, pinga e queijo ;)'],blog : 'fredmoreira.com'};

Page 4: Palestra de como testar sua API Rest no Grupo de Teste Carioca

console.log('MINUTRADE');

Page 5: Palestra de como testar sua API Rest no Grupo de Teste Carioca

API é um conjunto de rotinas e padrões de programação para acesso a um aplicativo de software ou plataforma baseado na Web.

Fonte: http://canaltech.com.br/o-que-e/software/o-que-e-api/

Uma API é criada quando uma empresa de software tem a intenção de que outros criadores de software desenvolvam produtos associados ao seu serviço.

O que é ?

Page 6: Palestra de como testar sua API Rest no Grupo de Teste Carioca
Page 7: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Testes no nível de serviçosPreenche o gap entres os testes de unidade e os testes de UIComum em times ágeis, dependendo da arquitetura.Acontecem em paralelo ao desenvolvimentoFoco na funcionalidade, não no comportamento ou experiência do clienteSubcutaneous Tests (MartinFowler)

Page 8: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Fonte: http://goo.gl/p98Muv

Page 9: Palestra de como testar sua API Rest no Grupo de Teste Carioca
Page 10: Palestra de como testar sua API Rest no Grupo de Teste Carioca
Page 11: Palestra de como testar sua API Rest no Grupo de Teste Carioca
Page 12: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Fonte: https://www.deepcrawl.com/knowledge/guides/the-abc-of-http-status-codes/

Page 13: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Fonte: http://httpstatusdogs.com/

Page 14: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Fonte: http://httpstatusdogs.com/

Page 15: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Fonte: http://httpstatusdogs.com/

Page 16: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Fonte: https://http.cat/

Page 17: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Fonte: https://http.cat/

Page 18: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Fonte: https://http.cat/

Page 19: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Resultados esperados

Valor

Tipo de dado

Consistência

Erros

Page 20: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Como testar manualmente ?

Page 21: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Ferramentas

Page 22: Palestra de como testar sua API Rest no Grupo de Teste Carioca
Page 23: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Entendendo transações HTTP

Page 24: Palestra de como testar sua API Rest no Grupo de Teste Carioca

#COMANDO CURL

curl -i -X GET "http://localhost:5000/contacts?name=Tester"

#HEARDER

HTTP/1.1 200 OKX-Powered-By: ExpressContent-Type: application/json; charset=utf-8Content-Length: 110ETag: W/"6e-Za+ESrkoytVXhydy0NJoFA"Date: Mon, 14 Mar 2016 18:17:19 GMTConnection: keep-alive

#BODY

[{"_id":"56d5efa8c82593800291c02b","name":"Tester","mobilephone":"0552188889999","homephone":"0552133332222"}]

Page 25: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Postman

Page 26: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Postman

Page 27: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Mas eu preciso mesmo automatizar testes de API ?

Page 28: Palestra de como testar sua API Rest no Grupo de Teste Carioca
Page 29: Palestra de como testar sua API Rest no Grupo de Teste Carioca
Page 30: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Mundo JS

http://www.fredmoreira.com/2014/11/como-voce-anda-testando-sua-api-rest.html

http://goo.gl/Ft6xZJ

http://dareid.github.io/chakram/

Page 31: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Mundo Ruby

Page 32: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Mundo Java

https://www.youtube.com/watch?v=dShI6n1CSoY

@juliodelimas

Page 33: Palestra de como testar sua API Rest no Grupo de Teste Carioca
Page 34: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Testes de segurança

Page 35: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Se eu não quiser rodar nenhuma api na minha máquina?

Page 36: Palestra de como testar sua API Rest no Grupo de Teste Carioca

http://www.mocky.io/

Page 37: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Repositório GitHubhttps://github.com/fredmoreira/phone-book

Page 38: Palestra de como testar sua API Rest no Grupo de Teste Carioca
Page 39: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Links

http://katrinatester.blogspot.com.br/2015/09/api-web-services-microservices-testing.html

http://www.guru99.com/api-testing.html

http://www.restpatterns.org/

http://www.tutorialspoint.com/software_testing_dictionary/api_testing.htm

https://www.hurl.it/

Page 40: Palestra de como testar sua API Rest no Grupo de Teste Carioca

Obrigado!

Frederico [email protected]

@fredaomoreirawww.fredmoreira.com