Mudanças entre as edições de "Testes unitários"
(→Solução proposta) |
(→Solução proposta) |
||
(6 edições intermediárias de um usuário não apresentadas) | |||
Linha 12: | Linha 12: | ||
A equipe de desenvolvimento concluiu pela criação de uma classe abstrata (OperacaoFundamental) que define a interface de uma operação que recebe dois elementos do tipo '''double''' e retorna uma resultado também '''double'''. Esta definição de interface é essencial para que o desenvolvedor conheça os as características do problema a ser resolvido. | A equipe de desenvolvimento concluiu pela criação de uma classe abstrata (OperacaoFundamental) que define a interface de uma operação que recebe dois elementos do tipo '''double''' e retorna uma resultado também '''double'''. Esta definição de interface é essencial para que o desenvolvedor conheça os as características do problema a ser resolvido. | ||
+ | |||
+ | === '''Desenvolvimento dos testes unitários''' === | ||
+ | |||
+ | Com base no TDD, antes de iniciar a construção da solução o desenvolvedor deve dominar (ou ter acesso a quem domine) o comportamento esperado das operações que devem ser implementadas. |
Edição das 14h21min de 25 de maio de 2015
Conteúdo |
INTRODUÇÃO
O processo de desenvolvimento do PJE 2 é baseado no Test Driven Development (TDD) ou em português Desenvolvimento guiado por testes. Este modelo inicia o desenvolvimento de funcionalidades a partir da criação de testes para o código a ser construído. Para tanto o desenvolvedor deve ter o domínio da fucionalidade a ser construída: ele deve conhecer seus parâmetros de entrada e as saídas esperadas, incluindo eventuais exceções. Este documento descreve um exemplo simples de desenvolvimento de uma nova funcionalidade solicitada por um usuário baseado no modelo TDD.
REQUISITO DO USUÁRIO
O usuário solicitou que a equipe de desenvolvimento criasse uma calculadora para as 4 operações matemáticas fundamentais: soma, subtração, multiplicação e divisão. A calculadora deve trabalhar sempre com dois números reais, realizando a operação sobre eles e devolvendo um resultado real.
Solução proposta
Para resolver o problema a equipe de desenvolvimento modelou a solução conforme ilustração do diagrama abaixo.
A equipe de desenvolvimento concluiu pela criação de uma classe abstrata (OperacaoFundamental) que define a interface de uma operação que recebe dois elementos do tipo double e retorna uma resultado também double. Esta definição de interface é essencial para que o desenvolvedor conheça os as características do problema a ser resolvido.
Desenvolvimento dos testes unitários
Com base no TDD, antes de iniciar a construção da solução o desenvolvedor deve dominar (ou ter acesso a quem domine) o comportamento esperado das operações que devem ser implementadas.