O desenvolvimento dirigido a testes (TDD, do Inglês Test-...

Próximas questões
Com base no mesmo assunto
Q507687 Engenharia de Software
O desenvolvimento dirigido a testes (TDD, do Inglês Test-Driven Development) é uma abordagem de desenvolvimento de software na qual se intercalam tes­tes e desenvolvimento de código. Uma das características da abordagem TDD é
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: A - a sua utilidade no desenvolvimento de softwares novos.

Para compreender esta questão, é importante ter um conhecimento sólido sobre o que é Desenvolvimento Dirigido a Testes (TDD). O TDD é uma técnica de desenvolvimento de software que enfatiza a escrita de testes antes mesmo de escrever o código funcional. A ideia é começar desenvolvendo pequenos testes para novas funcionalidades e, em seguida, escrever o código que faça esses testes passarem. Depois de passar no teste, o desenvolvedor refatora o código para aprimorar sua estrutura, sem alterar seu comportamento. Este ciclo é conhecido como vermelho/verde/refatorar.

A alternativa correta, letra A, se destaca por reconhecer que uma das grandes vantagens do TDD é sua utilidade no desenvolvimento de novos softwares. Isso ocorre porque o TDD ajuda a criar um design limpo e código com menos defeitos desde o começo, uma vez que o desenvolvimento é orientado por testes que validam continuamente a funcionalidade que está sendo construída. Uma abordagem TDD pode reduzir significativamente o tempo de depuração e manutenção no futuro, tornando-se uma prática valiosa para projetos que estão iniciando.

É importante observar que as outras opções contêm informações que são incorretas ou que não representam as características do TDD:

  • Opção B: Na verdade, o TDD tende a reduzir o custo associado aos testes de regressão, pois os testes são criados continuamente e ajudam a garantir que novas mudanças não quebrem funcionalidades existentes.
  • Opção C: A automatização dos testes é fundamental no TDD, pois permite que os testes sejam executados frequentemente e de forma rápida, dando feedback imediato aos desenvolvedores.
  • Opção D: O TDD é mais adequado para processos de software iterativos e incrementais, como o Ágil, e não para processos sequenciais tradicionais, onde o teste geralmente ocorre após a conclusão do desenvolvimento.

Ao entender esses pontos, você pode ver por que a alternativa A é a correta e como o TDD se encaixa no contexto de criação de software novo, favorecendo um desenvolvimento mais ágil, confiável e de melhor qualidade.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Resposta A, porque o TDD é ideal para sistemas novos sendo que vc faz o teste depois codifica para atender esse cenario de teste.

Resposta A, porque o TDD é ideal para sistemas novos sendo que vc faz o teste depois codifica para atender esse cenario de teste.

Este entendimento vai muito além; não só se prende a um software novo mas também a softwares que nunca foram criado pela equipe desenvolvedora.

No TDD, o teste é planejado  antes da codificação. Se o sofware, apesar de ser novo, já for de grande conhecimento da equipe, ou seja já estão cansados de saber os erros e problemas que surgem devido a sua grande experiência a TDD não terá eficiência. 

Acredito que a alternatida D) também está certo, TDD é uma técnica de desenvolvimento criada dentro das metodologias ágeis mas pode sim sem nenhum problema ser incorporado em uma metodologia guiada a planos ou sequencial.

Questão mal elaborada, caberia recurso.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo