Você testa suas APIs no seu dia a dia? Vamos automatizar estes testes?
FREDERICO MOREIRAwww.fredmoreira.com
INTERNET
DOS
TREM
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'};
console.log('MINUTRADE');
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 é ?
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)
Fonte: http://goo.gl/p98Muv
Fonte: https://www.deepcrawl.com/knowledge/guides/the-abc-of-http-status-codes/
Fonte: http://httpstatusdogs.com/
Fonte: http://httpstatusdogs.com/
Fonte: http://httpstatusdogs.com/
Fonte: https://http.cat/
Fonte: https://http.cat/
Fonte: https://http.cat/
Resultados esperados
Valor
Tipo de dado
Consistência
Erros
Como testar manualmente ?
Ferramentas
Entendendo transações HTTP
#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"}]
Postman
Postman
Mas eu preciso mesmo automatizar testes de API ?
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/
Mundo Ruby
Mundo Java
https://www.youtube.com/watch?v=dShI6n1CSoY
@juliodelimas
Testes de segurança
Se eu não quiser rodar nenhuma api na minha máquina?
http://www.mocky.io/
Repositório GitHubhttps://github.com/fredmoreira/phone-book
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/