Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Scrum Gathering Rio 2016 - Conteinerizando Test...

Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose

Palestra apresentada no Regional Scrum Gathering Rio 2016, no dia 24 de Junho.

Stefan Teixeira

June 24, 2016
Tweet

More Decks by Stefan Teixeira

Other Decks in Programming

Transcript

  1. • QA Automation Engineer @ Toptal • Blogs técnicos: stefanteixeira.com.br

    (pt-br) / stefanteixeira.com (en) • Co-organizador dos meetups DevOps Carioca e Grupo de Testes Carioca Contatos: • E-mail: [email protected] • Twitter: twitter.com/stefan_teixeira • LinkedIn: linkedin.com/in/stefanteixeira • GitHub: github.com/stefanteixeira • SlideShare: slideshare.net/stefanteixeira Sobre
  2. Docker Compose • Ferramenta para definir/rodar aplicações multi-container • Conhecido

    antigamente como Fig • YAML ❤ https://docs.docker.com/compose/
  3. #1 Se os testes (exceto testes unitários) são trabalhosos para

    rodar localmente, os devs não vão rodar. ¯\_(ϑ)_/¯
  4. Demonstração • Exemplo mais simples possível, com três containers: •

    App (uma API REST) • DB (banco de dados MongoDB) • API Tests (testes de API escritos com Supertest) • https://github.com/stefanteixeira/demo-testing- compose
  5. Pontos de atenção • Logs • volumes ou data containers

    • Tempo de inicialização • netcat (nc), curl, wait-for-it, wait_for module (Ansible)
  6. Pontos de atenção • Logs • volumes ou data containers

    • Tempo de inicialização • netcat (nc), curl, wait-for-it, wait_for module (Ansible) • Geração de imagens
  7. Pontos de atenção • Logs • volumes ou data containers

    • Tempo de inicialização • netcat (nc), curl, wait-for-it, wait_for module (Ansible) • Geração de imagens • Alpine-linux, Phusion (minimal base images)
  8. Pontos de atenção • Logs • volumes ou data containers

    • Tempo de inicialização • netcat (nc), curl, wait-for-it, wait_for module (Ansible) • Geração de imagens • Alpine-linux, Phusion (minimal base images) • Automatizar processo
  9. Referências • "Stop Being Lazy and Test Your Software”: •

    https://www.youtube.com/watch?v=Mx1Il9wIepw • http://www.slideshare.net/rheinwein/stop-being-lazy-and-test-your- software • https://hharnisc.github.io/2016/06/19/integration-testing-with-docker- compose.html • https://docs.docker.com/compose/startup-order/ • https://github.com/vishnubob/wait-for-it • https://www.ansible.com/blog/six-ways-ansible-makes-docker-compose-better • https://www.vivaolinux.com.br/artigo/Tutorial-Netcat