Carlos Brando

Nome do Jogo

Vamos falar sobre testes

343865357_60fa3ffa81

O Rails usa o Test::Unit como framework de testes.

Nosso framework de testes é muito parecido com o SUnit do Smalltalk, que mais tarde se tornou o xUnit, que você vai encontrar para algumas linguagens de programação. Se quiser ver uma lista dos frameworks de testes que cada linguagem possui, clique aqui.

O Test::Unit (e a idéia do xUnit) se utiliza de quatro conceitos básicos:

Um Teste é uma Afirmação

Ao se realizar um teste qualquer, é necessário afirmar algo. Por exemplo, você pode afirmar que o CEP de um endereço tem 8 dígitos, se falhar nesta condição significa falhar no teste. Para isto o Rails possui os famosos métodos assert. Uma lista com estes métodos pode ser vista aqui.

Um método para cada Teste

Todo teste é um método cujo nome sempre se inicia com test_. Estes métodos contêm diversas afirmações relacionadas, que testam uma funcionalidade de sua aplicação. Seguindo o exemplo, nosso método de teste para o CEP poderia ser algo como test_cep ou test_cep_size.

Classes de Teste

Para facilitar nossa vida o Rails já tem tudo preparado para nossos testes. Toda classe de teste no Rails precisa herdar de Test::Unit::TestCase, que já contém tudo que você precisa para executar seus testes unitários.

Suíte de Testes

Uma suíte de testes é um conjunto de casos de teste (as classes de teste pô!). Quando você roda uma suíte de testes todos os seus métodos de testes serão executados, no Rails isto é trivial.

 

É simplesmente imprescindível que você teste seus códigos. No Rails chega a ser vergonhoso não fazer isto, visto que ele mesmo cria tudo que se precisa, deixando apenas o trabalho de "completar" os testes para você.

Para aprender mais sobre como funcionam os teste no Rails você pode clicar aqui e aqui. E lembrem-se: "Quem não testar é mulher do padre…".

 

PS: E não se esqueçam de atualizar a sua versão do Rails (1.2.4): gem update rails -y.

Comments