$30 off During Our Annual Pro Sale. View Details »

Meetup Puppet-BR 20160518 - Testes de código Puppet

Meetup Puppet-BR 20160518 - Testes de código Puppet

Apresentação sobre testes unitários e de aceitação para código Puppet no meetup Puppet Brasilia 20160518

Guto Carvalho

May 26, 2016
Tweet

More Decks by Guto Carvalho

Other Decks in Technology

Transcript

  1. Meetup Puppet Brasil - Brasília - 18/Mai/16

    View Slide

  2. 2
    Comunidade Puppet-BR
    Neste oficina seguiremos todas as recomendações de
    codificação e guia de estilos da Puppet.
    Aprenda a escrever testes para seu código
    Testes DE CÓDIGO
    D E S E N V O L V I M E N T O P U P P E T

    View Slide

  3. 3
    Flato Presentation
    Conceitos Testes
    Contato
    Conteúdo
    Nesta apresentação vamos falar sobre
    desenvolvimento de módulos e fatos
    Comunidade Puppet-BR
    Adriano Vieira Guto Carvalho Demo

    View Slide

  4. Antes de iniciar o desenvolvimento dos testes vamos entender alguns conceitos básicos
    Entendendo conceitos básicos

    View Slide

  5. Tipos de teste
    Entenda os tipos de teste deste oficina
    Comunidade Puppet-BR 5
    Sintaxe Linter Unitário (BDD) Aceitação (ATDD)
    Testes com foco na
    sintaxe da linguagem,
    valida integridade e
    consistência
    Testes com foco no estilo
    do seu código, sugere
    melhorias e boas práticas
    a serem seguidas
    Testes de
    comportamento do seu
    código, testa porções
    pequenas do código
    Teste de comportamento do
    sistema que recebeu o
    código, testa se o código foi
    devidamente aplicado

    View Slide

  6. Vamos entender cada tipo de teste e como usar
    Estudando testes

    View Slide

  7. Puppet Parser Validate
    Teste de sintaxe
    Comunidade Puppet-BR 7
    O parser valida a sintaxe do
    código puppet e nos ajuda a
    melhorar e corrigir nosso
    código
    O Puppet possui uma linguagem declarativa
    chamada DSL que como qualquer outra
    linguagem necessita que sua sintaxe seja
    seguida corretamente para que seu código
    seja compilado como catálogo

    View Slide

  8. Puppet Lint
    Teste de estilo
    Comunidade Puppet-BR 8
    O linter é uma ferramenta
    que verifica se o código que
    estamos escrevendo segue o
    guia de estilos da Puppet
    A checagem da sintaxe é importante, contudo
    existem regras de estilo para que seu código
    funcione melhor e seja escrito de forma clara.

    View Slide

  9. Testes (TDD/BDD/ATDD) devem ser escritos
    antes do desenvolvimento do código.

    View Slide

  10. RSpec-Puppet (BDD)
    Testes unitários
    Comunidade Puppet-BR 10
    O rspec é uma ferramenta de
    testes de comportamento da
    linguagem ruby.
    A puppet criou um plugin para o rspec capaz
    de checar pequenas porções do código
    Puppet existente em um manifest verificando
    sua integridade e consistência.

    View Slide

  11. View Slide

  12. ServerSpec
    Testes de aceitação
    Comunidade Puppet-BR 12
    Módulos são conjuntos de
    configurações definidas e
    autocontidas em um
    diretório
    Um módulo pode conter manifests,
    arquivos estáticos, plugins, templates,
    testes e dados. Tudo está dentro de
    um mesmo diretório o que facilita o
    compartilhamento, desenvolvimento
    e utilização.

    View Slide

  13. View Slide

  14. Vamos testar o código do módulo do oficina anterior
    Oficinas e demos

    View Slide

  15. Exemplo de código
    Faça o download
    Flato Presentation 15
    https://gitlab.com/meetup-puppet-br/example-module

    View Slide

  16. Flato Presentation 16
    QA

    View Slide

  17. Participe da comunidade
    Venha aprender puppet com a gente
    Comunidade Puppet-BR 17
    IRC Site & Planeta Telegram Lista
    Acesse o canal
    #puppet-br na rede
    freenode de IRC com
    seu cliente preferido
    Acesse o site 

    puppet-br.org e o
    planeta.puppet-br.org
    Entre no grupo
    telegram.me/puppetbr
    no telegram.
    Participe das listas no
    google groups puppet-
    users-br e mcollective-
    users-br.

    View Slide

  18. Entre em Contato
    @gutocarvalho
    @adrianovieira

    View Slide

  19. Flato Presentation 19
    Obrigado

    View Slide

  20. Fotos
    Créditos
    20
    Flickr/PuppetLabs/PuppetConf'2015
    Instruct/PuppetConf'2015
    Google Images
    Comunidade Puppet-BR

    View Slide