freeCodeCamp/guide/portuguese/agile/test-driven-development/index.md

38 lines
1.8 KiB
Markdown

---
title: Test Driven Development
localeTitle: Desenvolvimento Orientado a Testes
---
## Desenvolvimento Orientado a Testes
Test Driven Development (TDD) é uma das abordagens do Agile Software Development. Baseia-se no conceito de que
> você deve escrever um caso de teste para o seu código mesmo antes de escrever o código
Aqui, escrevemos primeiro o teste unitário e depois escrevemos o código para concluir o teste com sucesso. Isso economiza tempo gasto para realizar teste de unidade e outros testes semelhantes, pois estamos indo adiante com a iteração bem-sucedida do teste, além de levar à obtenção de modularidade no código. É basicamente composto por 4 etapas
* Escreva um caso de teste
* Veja o teste falhar (vermelho)
* Faça o teste passar, fazendo com que os crimes no processo (Verde)
* Refatorar o código para estar de acordo com os padrões (Refatorar)
Essas etapas seguem o princípio do Refator Vermelho-Verde. Red-Green certifique-se de escrever o código mais simples possível para resolver o problema, enquanto o último passo garante que o código que você escreve está de acordo com os padrões.
Cada novo recurso do seu sistema deve seguir as etapas acima.
![fluxo de tdd](http://www.agiledata.org/images/tddSteps.jpg)
#### Mais Informações:
[Introdução](http://agiledata.org/essays/tdd.html) do Agile Data [ao TDD](http://agiledata.org/essays/tdd.html)
Wiki no [TDD](https://en.wikipedia.org/wiki/Test-driven_development)
Martin Fowler [está morto em TDD?](https://martinfowler.com/articles/is-tdd-dead/) (Uma série de conversas gravadas sobre o assunto)
Livro de Kent Beck [Test Driven Development by Example](https://www.amazon.com/Test-Driven-Development-Kent-Beck/dp/0321146530)
[Ciclos de TDD do](http://blog.cleancoder.com/uncle-bob/2014/12/17/TheCyclesOfTDD.html) tio Bob