#141 - O grande mal-entendido do TDD


Hey! 👋

Hoje é dia de virada na Codecon e a gente tá avisando pra você correr e garantir seu ingresso com desconto!

Codecon Universe - O hackathon da Codecon
17 e 18 de maio em Joinville, SC

Ingresso com 12% de desconto até hoje!
https://eventos.codecon.dev/codecon-universe-25/

Codecon Summit
18 e 19 de julho em Curitiba, PR

Ingresso com 15% de desconto até hoje!https://eventos.codecon.dev/codecon-summit-25/

Nos vemos por lá, eim?

Até mais,
Gabriel Nunes (@nunesgabriel)

O grande mal-entendido do TDD

Tem um papo rolando no mundo dos devs sobre o famoso Teste de Unidade. Muita gente acha que "unidade" significa testar só uma classe ou método isolado. Mas, olha só: a ideia original era testar comportamentos, e não só pequenos pedaços de código sozinhos no escuro. E aí que começa a confusão.

O que rola bastante é o pessoal escrevendo um teste pra cada classe e isolando tudo com mocks. Legal, né? Nem tanto. Porque, quando você mexe em uma coisinha no código, passa o dia inteiro arrumando testes que deram falso positivo. Ou seja, não ajuda muito.

Tem dois estilos no jogo: mockista (teste tudo isolado, com mocks pra tudo) e classicista (testa de fora pra dentro, igual um usuário faria). Aí vão umas dicas bacanas pro teste classicista:

👉 Dica 1: Testa de fora pra dentro! Foca no comportamento e não na estrutura. Um bom teste de integração ou end-to-end vale ouro, mesmo que leve um pouco mais de tempo. E esquece aquela pirâmide de testes antiga — já tem conceitos mais legais por aí, tipo o “Honeycomb” e o “Testing Trophy”.

👉 Dica 2: Não fica isolando tudo! Se der pra testar com banco de dados real, usa! Docker tá aí pra isso. Quanto mais você isola, menos você sabe se o sistema funciona como um todo.

👉 Dica 3: TDD de verdade é escrever teste primeiro. Mas se não der, tudo bem. O importante é garantir que seus testes estão pegando os bugs. Não vale só caçar cobertura de teste, tem que fazer sentido!

👉 Dica 4: Teste não define arquitetura. Os requisitos do sistema é que mandam nisso

No fim, tudo é questão de trade-offs. Quer rapidez? Quer segurança? Dá pra balancear. Teste com propósito e sem neura! 😎

Um recado do patrocinador 📣

Quem é o/a melhor dev que você conhece?

Saber programar bem te leva longe, mas compartilhar conhecimento e nunca parar de aprender te leva além. O VP de Engenharia do Asaas diz que, a partir do momento em que você for o/a melhor, é porque parou de procurar. Nunca pare de praticar, estudar e se inspirar em profissionais melhores do que você.

No Asaas, essa troca de conhecimento é muito incentivada. Os times praticam revisões construtivas de código, com feedbacks constantes e estão sempre de olho no que pode ser melhorado. Se você busca um ambiente para se inspirar, aprender e crescer, o Asaas tem oportunidades para diferentes níveis, inclusive para Tech Leaders que querem guiar e desenvolver outros devs, confira: carreiras.asaas.com/tech

🚀 produtividade

O Obsidian é um copiloto no caos da vida. Esse software de anotações é tipo um caderno inteligente: deixa a estrutura das notas crescer naturalmente, sem pressão pra organizar tudo antes de começar. Com os links internos, suas ideias viram uma teia que faz tudo se conectar de um jeito fácil. E o melhor? Ele salva tudo em arquivos de texto simples—ou seja, seus dados são seus pra sempre. Obsidian é liberdade total pra aprender e criar.

🧑‍💻 programação

Programação dinâmica não é nenhum bicho de sete cabeças! Ela só parece confusa por causa do nome esquisito. Na prática, é como resolver problemas grandes quebrando em probleminhas menores e guardando as respostas pra não refazer o trabalho à toa (tipo o clássico exemplo do Fibonacci). E isso serve pra um monte de algoritmos famosos, como Dijkstra e até a distância de Levenshtein, usada pra medir diferença entre textos. Resumindo: é só uma forma inteligente de evitar repetir esforço. Nada de magia negra aqui!

💼🚫 demissão

Se a empresa parou de crescer, o fundador já pulou fora, RH manda mais que todo mundo e os chefões só falam de imóveis, fica esperto: é hora de sair! Quando o crescimento desacelera, a inovação some e sobra microgestão e política. Se começam a empurrar “volta pro escritório” só pra economizar com demissão, fuja! Procure um lugar onde ainda tem energia de “primeiro dia”, que valorize as pessoas e esteja crescendo de verdade. Dica: melhor sair antes que a árvore seque de vez!

🤔 if

Imagina resolver se um número é par ou ímpar sem usar o operador de módulo? Pois é! Um programador tentou fazer isso só com ifs, criando um código em C com várias comparações. Primeiro funcionou para números pequenos, mas logo viu que precisaria de muuuitos ifs para cobrir tudo. Então, ele usou Python para gerar um arquivo com milhões de linhas em C e depois partiu pro nível hard: assembly e código de máquina! Resultado? Um arquivo de 40 GB só pra dizer: “par” ou “ímpar”. Simplesmente genial (ou loucura)!

🗣️ linguagem

Quer dar um upgrade no seu CSS? Veja 12 atualizações modernas que você faz com uma linha só! Sabe aquele hack antigo pra vídeo 16:9? Agora é só usar aspect-ratio. Quer suas imagens comportadinhas? Joga um object-fit nelas! E ainda tem margin-inline, scroll-margin-top, accent-color e mais, pra simplificar, modernizar e até eliminar uns JavaScripts desnecessários. Tudo isso melhora a experiência do usuário e ainda reduz sua dívida técnica. Fácil, rápido e eficiente. Bora testar?

📹 youtube

Já parou pra pensar no tamanho do YouTube? Pois é, um grupo de pesquisadores ficou tão encucado com isso que resolveu chutar URLs aleatórias pra ver quantos vídeos encontravam. Resultado? Estimam que existam mais de 13 bilhões de vídeos na plataforma! E não para por aí: no ano de 2023, subiram mais de 4 bilhões de vídeos. A pesquisa ajuda a entender o que rola fora do radar dos grandes influenciadores e revela que o vídeo médio tem só 39 visualizações.

Novo episódio do podcast no ar! :)

Conversamos como alinhar expectativas de performance com sua liderança e outros assuntos sobre carreira. Bora escutar?

Tem alguma pergunta? Só responder o e-mail!

R. Dr. João Colin, 1285, Joinville, SC 89204-001
Desinscrever-se · Preferências

code(weekly)

Junte-se à 7.500+ devs e receba e-mails semanais com a melhor curadoria de artigos, repositórios e outros links interessantes da área tech.

Read more from code(weekly)

Hey! 👋 Em abril ainda tem meetups da Codecon pra movimentar a comunidade. Bora? 👉 23/04 - Meetup Codecon - São Paulo - presencial FIAP 👉 24/04 - Meetup Codecon - Curitiba - presencial Pinhão Hub👉 29/04 - Meetup Codecon - Blumenau - presencial Balbúrdia Blumenau Mais informações aqui! Até mais,Gabriel Nunes (@nunesgabriel) Segredos de quem manja muito de código: como trabalhar melhor, não mais Lições acumuladas ao longo de décadas vendo (e ensinando) programadores. Spoiler: os bons têm padrões...

Hey! 👋 As INSCRIÇÕES ESTÃO ABERTAS PARA O DATACON! 🔥 A Datacon é um evento para quem não só fala de dados, mas põe a mão na massa e faz acontecer. Junte-se a referências do mercado em discussões sobre data science, machine learning, big data, inteligência artificial, data engineering e mais. Muito networking e conhecimento aplicável. Saiba mais e faça a sua inscrição agora mesmo! Até mais,Gabriel Nunes (@nunesgabriel) Pensando em criar o seu próprio sistema de faturamento? Desista! Montar um...

Hey! 👋 Tem novidade na lojinha! Agora a DVLPR tem umas mochilas maneiras. 🎒🔥 Pra você carregar o note, aquele monte de cabos e até uma térmica de café. Acesse o site e conheça as novidades e todos os nossos produtos. Até mais,Gabriel Nunes (@nunesgabriel) A internet virou um shopping lotado A internet está cada vez mais cheia e difícil de se destacar, como um shopping lotado. Antigamente, a internet era simples, com poucos sites e conteúdos mais fáceis de acompanhar. Com o tempo, surgiram...