Tdd: desenvolvimento dirigido por teste
INTRODUÇÃO
Falhas de software são as grandes responsáveis por grandes custos e tempo no processo de desenvolvimento, afetando assim a qualidade do software. Embora não seja possível evitar todas as falhas de uma aplicação, é possível com a utilização de uma infraestrutura de testes mais elaborada, capazes de identificar e remover defeitos mais cedo e de maneira mais ágil reduzir consideravelmente o número das mesmas. Na tentativa de solucionar esses problemas surgiu o Test-Driven Development (TDD), que consiste em implementar testes para cada funcionalidade do software antes mesmo de implementá-lo. Após cada código implementado é executado os testes para verificar se não há erros. Desta maneira os desenvolvedores focam na funcionalidade do software, e quando terminam seu trabalho têm certeza de que o mesmo foi bem implementado, garantindo a qualidade da aplicação. Apesar de o nome sugerir que TDD esteja relacionado apenas a teste é uma técnica de projeto de software, pois, a mudança da ordem de execução dos testes tem profunda influência no projeto de software. Para entender os propósitos de TDD, é necessário estudar os conceitos de testes de unidade e mock objects. O objetivo desta monografia será compreender o que é TDD, seus propósitos, vantagens e desvantagens. Qual o papel dos testes de unidade no desenvolvimento desta técnica. Será exposto como os mock objects auxiliam na criação dos testes de unidade. Estudar os frameworks necessários para a implementação de um projeto com técnica TDD. Implementar um projeto utilizando a técnica TDD e um dos frameworks estudados. Para alcançar o sucesso deste trabalho, o mesmo foi divido em uma parte teórica e uma parte prática. A parte teórica consiste da pesquisa de conceitos e estudo de ferramentas, a parte prática é onde a teoria estudada é aplicada na implementação. Portanto, esta monografia está dividida em