#blog

TDD: o que é test driven development e qual a sua importância

What’s a Rich Text element?

The rich text element allows you to create and format headings, paragraphs, blockquotes, images, and video all in one place instead of having to add and format them individually. Just double-click and easily create content.

Static and dynamic content editing

A rich text element can be used with static or dynamic content. For static content, just drop it into any page and begin editing. For dynamic content, add a rich text field to any collection and then connect a rich text element to that field in the settings panel. Voila!

  1. asdasdsa
  • asdasdasdsa

How to customize formatting for each rich text

Headings, paragraphs, blockquotes, figures, images, and figure captions can all be styled after a class is added to the rich text element using the "When inside of" nested selector system.

Test Driven Development (TDD), conceito que define o desenvolvimento orientado a testes, é uma técnica que possibilita escrever um código simples, claro e seguro. 

Com referências de autores como Robert C. Martin e Kent Beck, explicamos aqui no Blog da Caiena o que é e a importância do TDD. Continue com a leitura para aprimorar seus códigos! Navegue pelo conteúdo:

- O que é Test Driven Development (TDD)

- As três leis para realizar o TDD

- A importância do TDD no desenvolvimento de software

O que é Test Driven Development (TDD)

Quando abordamos o essencial sobre o desenvolvimento ágil de softwares aqui no Blog da Caiena, um dos conceitos apresentados foi o de Test Driven Development (TDD).

Na ocasião, explicamos que o objetivo do desenvolvimento orientado a testes é melhorar a qualidade dos códigos, tornando-os sustentáveis. Isso porque a qualidade do código inicial reflete em redução de problemas maiores no futuro, o que pode facilitar o processo de escalonamento do sistema que está sendo desenvolvido.

Na prática, o conceito de Test Driven Development significa que a pessoa desenvolvedora de software deve escrever um teste para o código antes mesmo de escrever o próprio código da funcionalidade, para assim compreender melhor sobre o seu funcionamento e evitar erros futuros.

As três leis para realizar o TDD

Também já explicamos aqui no Blog da Caiena que, na abordagem Test Driven Development, TDD, o desenvolvimento do software ocorre orientado por meio do ciclo de testes unitários, baseado em três “leis”, definidas pelo autor Robert C. Martin, também conhecido mundialmente no mundo de desenvolvimento de software como Uncle Bob, no livro “Código Limpo - Habilidades Práticas do Agile Software”

“Primeira Lei: Não se deve escrever o código de produção até criar um teste de unidade de falhar.
Segunda Lei: Não se deve escrever mais de um teste de unidade do que o necessário para falhar, e não compilar e falhar.
Terceira Lei: Não se deve escrever mais códigos de produção do que o necessário para aplicar o teste de falha atual.”

(Fonte: Código Limpo - Habilidades Práticas do Agile Software, Robert C. Martin)

As etapas do TDD também são nomeadas por Red, Green e Refactor. Em resumo, o Test Driven Development ocorre da seguinte forma:

1. Red: a etapa define o momento em que quem desenvolve o software escreve um teste para falhar, propositalmente, pois ainda não há a implementação.

2. Green: esta parte do ciclo de testes unitários do TDD define o momento de escrever o código correto da funcionalidade. Se aprovado, o processo deve seguir em frente.

3. Refactor: neste momento, depois de o código passar no teste e estar em funcionamento, é hora de trabalhar para que ele fique mais limpo, ou seja, mais legível, sem redundâncias e torne-se fácil de ser trabalhado por qualquer pessoa desenvolvedora no futuro.

Logo, estas três etapas visam orientar o desenvolvimento do software por meio de um ciclo interativo, repetido continuamente à medida em que se cria novas funcionalidades, para contribuir com a evolução da qualidade.

Em “Código Limpo”, Uncle Bob ressalta a importância do TDD como uma prática fundamental para tornar o código sustentável a longo prazo. Segundo ele, realizar o Test Driven Development antes de escrever o código pode ajudar a definir com clareza os requisitos do sistema, mantendo o foco nas funcionalidades essenciais, e garantindo que o trabalho esteja livre de erros.

A importância do TDD no desenvolvimento de software

Segundo Kent Beck, autor da referenciada obra “Test-Driven Development: By Example”, o desenvolvimento de software orientado a testes pode eliminar o “medo” por trás da criação do código. Para Beck, essa insegurança pode refletir na incapacidade das pessoas desenvolvedoras de absorverem críticas construtivas.

Logo, para o especialista, a importância do TDD está em promover o alcance de resultados positivos das equipes de programação. Eliminando o medo, torna-se mais fácil superar os desafios do desenvolvimento de software. Outro fator que reflete na importância do TDD de acordo com Kent é que esta prática elimina características provisórias, incentivando as pessoas desenvolvedoras de software a se comunicarem em busca de opiniões e melhorias. E, aqui no Blog da Caiena, nós já falamos o quanto a soft skill de comunicação e outras habilidades socioemocionais refletem na valorização profissional no mercado de tecnologia.

Vale ressaltar também que a testagem frequente possibilita rápidas mudanças, que otimizam a execução de testes automatizados para garantir que não existam erros no caminho do desenvolvimento. Com isso, é possível reduzir também o medo de regressões durante as atualizações e melhorias. E os testes também podem servir como referências para a documentação do software, facilitando o entendimento de outras pessoas sobre a funcionalidade.

Concluindo, testar continuamente e refatorar o código pode contribuir com a qualidade do trabalho, tornando-o mais confiável e eficiente. Além disso, ele será mais flexível a futuras mudanças, possibilitando benefícios a longo prazo que compensam o investimento de tempo na escrita de testes iniciais.

Falando em qualidade do software, você já conferiu nosso conteúdo sobre Quality Assurance no Blog da Caiena? Complete sua leitura com esta publicação que também aborda uma área e prática importantes do desenvolvimento de software.

Mais conteúdos

Ao clicar em “Aceitar todos os cookies”, você concorda com o armazenamento de cookies em seu dispositivo para aprimorar a navegação no site, analisar o uso do site e nossos esforços de marketing. Veja nossa Política de Privacidade para mais informações.

Contato

Ops, revise o formulário e tente novamente.