banner

Notícias

Oct 28, 2023

Como praticar TCR (Test && Commit

Artigos da página inicial do InfoQ Como praticar TCR (Test && Commit || Revert) reduz o tamanho do lote

20 de fevereiro de 2023 13 minutos de leitura

por

Philippe Bourgau

revisados ​​pela

Matt Campbell

Há algum tempo, um colega e eu executamos um código kata em uma conferência em Paris. Aqui estão os tipos de aprendizados que as pessoas expressaram no final:

Achei que estava dando passos pequenos, mas descobri que poderia torná-los ainda menores!

Ainda preciso de mais experiência com o próprio TDD!

ScyllaDB é o banco de dados para aplicativos com uso intensivo de dados que exigem alto rendimento e baixa latência. Alcance escala extrema com o menor TCO. Saber mais.

Eu me perdi em refatorações sem fim.

Até agora, DevOps e Entrega Contínua estão difundidos na indústria. Mas será que o trabalho é feito em pequenas fatias, continuamente integrado e utilizado? Muitas equipes ainda trabalham com ramificações de recursos, integrando apenas recursos completos!

Não seria ótimo se escrever código em pequenos passos se tornasse uma segunda natureza para os desenvolvedores? Atingindo todo o potencial do desenvolvimento baseado em tronco, DevOps e entrega contínua!

TCR é uma técnica que força você a escrever código em pequenos passos! É também um professor severo, mas eficaz. Vamos aprender mais sobre isso. Veremos como os desenvolvedores estão usando-o para fazer entregas mais contínuas e treinar seus colegas de equipe:

TCR significa Testar e Confirmar ou Reverter. Ele substitui o comando test por um test && commit || comando de reversão. Portanto, os desenvolvedores executarão o comando TCR em vez de iniciar o teste para verificar se o código está funcionando. Se o código funcionar conforme o esperado, o TCR o envia ao sistema de controle de versão. Se o código não funcionar, o TCR o reverte ao seu estado de funcionamento mais recente!

O TCR começou como um experimento maluco de Lars Barlindhaug, Oddmund Strømme, Ole Johannessen e Kent Beck durante um Code Camp em Oslo. Kent Beck então espalhou a notícia em seu blog. Kent Beck afirma que deveríamos tentar ideias estúpidas porque, às vezes, elas acabam sendo brilhantes! Se o TCR é estúpido ou brilhante ainda é uma questão em aberto. No entanto, as pessoas que persistem nisso por tempo suficiente acham-no esclarecedor!

fonte

Você certamente aprenderá alguma coisa. (Kent Beck sobre tentar o TCR)

Na verdade, os desenvolvedores que experimentaram seriamente o TCR relataram muitos benefícios:

Vamos ler o que eles dizem em primeira mão. Aqui estão entrevistas com dois profissionais de TCR.

Olá Guillaume, você pode nos contar sobre você em poucas palavras?

Guillaume Faas : Claro. Meu nome é Guillaume e atualmente sou .NET Developer Advocate na Vonage. Estou na indústria de software há quase 15 anos, sempre no ecossistema .NET. No entanto, se eu tivesse que escolher um marco na minha carreira, não seria uma função ou um projeto, mas o reconhecimento do Software Craftsmanship. Na verdade, mudou drasticamente a minha visão sobre o desenvolvimento de software, e há um antes e um depois. Desde então, procuro consistentemente difundir a mentalidade e seus valores.

Você pode compartilhar sua história do TCR: como você entrou no TCR? Quais foram suas primeiras impressões?

Faas : Coisa engraçada que você pergunta. Meu primeiro encontro com o TCR foi durante um de seus workshops, especificamente, o jogo de boliche no encontro Software Craftsmanship Luxembourg. Lembro-me do workshop ser muito divertido e esclarecedor. Mas, infelizmente, nossos passos de bebê não eram tão pequenos e começamos a temer salvar nossas mudanças. Mesmo assim, saí animado e com vontade de praticar mais.

Hoje, para que você usa o TCR?

Faas: Para ser totalmente transparente, aplico o TCR por meio da ferramenta que a equipe de coaching técnico da Murex construiu. Eu o uso principalmente para katas durante sessões de coaching. É uma ótima maneira de ensinar TDD porque traz mais ideias e não é necessariamente mais difícil. Também usei em código de produção, mas aconselho as pessoas a terem cuidado. Verificar se todos os testes são aprovados todas as vezes pode desacelerar drasticamente o ciclo de feedback. Por fim, também utilizei durante testes técnicos como candidato.

&& git commit -am "TCR" || git restore. /p>

COMPARTILHAR