Skip to content

ramalho/tdd-com-pytest

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TDD com Pytest

Coding Dojo

  • Treino coletivo de programação: prática em um ambiente seguro, como um dojo de artes marciais

  • Divertido e eficaz para:

    • Compartilhar conhecimento
    • Treinar boas práticas de programação (ex.: TDD)
    • Aprender novas linguagens ou APIs
    • Integrar novos membros ao time
  • Dojo no formato randori:

    • Duplas se sucedem resolvendo o problema com TDD

    • Uma dupla: piloto e co-piloto

      • piloto opera o teclado
      • co-piloto ajuda na solução
      • dupla conversa em voz alta
    • Após 5 minutos:

      • piloto volta para a platéia
      • co-piloto vira piloto
      • voluntário da platéia vira co-piloto
  • TDD: desenvolvimento guiado por testes

    • Escrever testes antes de implementar qualquer nova funcionalidade

    • Ajuda a deixar claro o que deve ser feito (a API) antes de mergulhar em como fazer

    • Ajuda a proporcionar uma boa DX (Developer eXperience)

    • Usar baby steps

  • Baby steps = passinhos de bebê

    • Para avançar com segurança e constância, cada passo deve ser bem simples

      • Resista à tentação de resolver vários casos de uma vez só, ou partir direto para generalização e abstração
    • Não tenha medo de implementar passos bem pequenos e triviais

    • Implementar o código mais simples possível que satisfaça os testes

    • No começo da jornada com TDD, é melhor sempre errar para menos: o menor passinho que você consegue imaginar

    • Com o tempo você aprende a regular o tamanho do passo de acordo com o desafio que está enfrentando a cada momento

  • Regras do coding dojo

    • Pilotos devem conversar em voz alta para a platéia poder acompanhar o raciocínio

    • Enquato o teste não estiver passando, a platéia não pode se manifestar (exceto a pedido dos pilotos)

    • Quando o teste passa, pessoas da platéia podem ajudar a decidir qual o próximo passo

    • Pilotos podem pedir ajuda a qualquer momento

About

Exemplos para praticar TDD com Pytest

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages