Smalltalk – TDD

Como pode ser visto nos artigos anteriores, o ambiente do Smalltak (estou usando o Pharo) é excelente para o desenvolvimento e depuração, permitindo alterações em tempo de execução mantendo o estado dos dados. Nem precisa de TDD.

Mas não é bem assim. Alterações no sistema podem requerer que todos ou uma determinada série de testes sejam refeitas para validar a correção do programa. Quando o programador possui prazos e nao se policia muito bem, os testes impõem um limite tangível. Passou nos testes não é necessário mais nada. Também não é bem assim, mas vamos ignorar por hora.

O “video-tutorial-mudo” mostra como utilizar TDD no desenvolvimento e como o sistema facilita a vida do usuário na criação de classes, métodos e execução dos testes. Foram feitos apenas testes para passar, mas poderiam ser criados testes para os casos onde deve ocorrer falha (divisão por zero por exemplo) e, como sempre, outras coisinhas.

Inicialmente criamos uma classe derivada de TestCase que conterá os métodos correspondentes aos testes a serem efetuados. Existe ainda o método setUp que, se definido, será executado antes de cada teste e o método tearDown que será executado ao final. Colocamos os métodos na categoria testing.

No evento do vídeo abaixo, após a criação do primeiro método para o teste, eu poderia criar a variável ‘c’ na instância da classe e inicializá-la no método setUp. Optei por declará-la como temporária dentro do próprio método. Tudo que o ambiente não reconheceu, tentou criar de uma forma automatizada ou solicitar a confirmação.

Poderemos executar os testes diretamente pelo menu, toda a classe ou os métodos individualmente. Como de praxe, quando um teste falha, o círculo na esquerda fica vermelho. Se passa é mostrado na cor verde. Podemos utilizar a janela TestRunner para auxiliar na execução dos testes. Depois fizemos uma pequena refatoração no programa e executamos os testes novamente para confirmar se estava tudo perfeito.

O vídeo baseia-se na imagem salva do artigo anterior.

=-=-=-=-=
Powered by Blogilo

Anúncios

Uma opinião sobre “Smalltalk – TDD

  1. Opa, legal os artigos sobre smalltalk cheguei aqui pela falecida lista smaltalk-br 🙂 nem sabia que eu ainda assinava 🙂
    Cheguei a ler bastante post do seu antigo blog, alguns até pelo web-archive, não sabia que você tinha voltado a escrever sobre Dev, estou vendo até tags sobre o Projeto Euler.
    Vou ficar acompanhando, bem vindo de volta.

Os comentários estão desativados.