TDD como ferramenta de arquitetura

Será que todo código difícil de testar isoladamente é mal projetado? Antes de responder a essa pergunta, temos que pensar o que vem a ser, afinal, um código bem projetado. Algumas pistas óbvias nos levam a pensar em alta coesão, baixo acoplamento, design patterns, DRY, SOLID e por aí vai. Agora, você já parou para pensar até onde o TDD é capaz de garantir uma arquitetura de qualidade?

“Nem sempre um código que é muito complexo de testar é um código mal projetado. Tudo depende do contexto, do framework, e do que você deseja obter com a sua arquitetura”, pontua Everton Tavares, desenvolvedor há 12 anos, e líder da comunidade DevParaná. Everton, que faz parte da equipe Mandic-Rivendel alocada no sul do país, apresentou sua palestra “TDD como ferramenta de arquitetura” na trilha DevTest do TDC São Paulo 2018.

Voltando às questões acima, a resposta parece uma só: a arquitetura deve ser planejada, e não garantida pelo TDD. Para Everton, o TDD é uma ferramenta excelente para detectar os “maus cheiros” no design. “Se você tem dificuldade em escrever seus testes, realmente seu código pode estar ruim, talvez esteja muito acoplado ou precise de um teste de integração e não um teste unitário”, comenta.

“Se há excesso de teste em uma única unidade, também pode ser um sinal de que o código está errado, ou mesmo testes ‘inteligentes’, que acabam sendo muito complexos para testar, excesso de validações (asserts) e o famoso ‘efeito cascata’ em testes não relacionados, onde você mexe de um lado da aplicação e acaba ‘quebrando’ o outro”.

Acesse abaixo os slides da palestra do Everton Tavares no TDC 2018:

Gostou do conteúdo? Tem alguma dúvida? Entre em contato com nossos Especialistas Mandic Cloud, ficamos felizes em ajudá-lo.



Serviços e Plataformas Cloud


Com entrega de consultoria baseada nos principais métodos e práticas de mercado, os Especialistas Mandic Cloud evidenciam e aceleram os resultados e impacto de transformação da área de tecnologia nas empresas com planejamento, implantação/migração e sustentação de workloads com gerenciamento na nuvem com o uso de automação, melhores práticas em DevOps e Data Analytics (Engenharia de Dados) para a Transformação Digital de negócios nas principais plataformas de cloud do mercado:
Gestão AWS Brasil

com Especialistas certificados para te acompanhar de perto, em português. Amazon AWS

Virtualização de Servidores VMware

e Especialistas Mandic Cloud 24x7 que simplificam sua vida. VMware

Orquestração Cloud OpenStack

com Especialistas Full-stack para conectar sua empresa ao futuro. OpenStack Cloud

Microsoft Azure Cloud

e Especialistas em Clouds acelerando o acesso do seu negócio à nuvem corporativa. Microsoft Azure

Google Cloud Platform

e Especialistas DevOps construindo o futuro com Transformação Digital. Google Cloud Platform