Bugzilla e Teste Unitário

maio 10, 2007 às 5:10 pm | Publicado em Desenvolvimento | Deixe um comentário

O desenvolvimento de software é algo complexo e conseqüentemente trabalhoso. Torna-se necessário a adoção de algumas ferramentas e boas práticas para diminuir a complexidade e aumentar o controle de todo processo. Dentre as ferramentas podemos destacar o bugzilla e entre as boas práticas o teste unitário.

A fase mais crítica do desenvolvimento de software é a sua manutenção, ou seja, quando o software já está em produção e a equipe precisa estar ao mesmo tempo corrigindo bugs e implementando novas funcionalidades. Concluindo, manutenção é igual à alteração.

Controlar as alterações no software (evolutiva ou corretiva) é uma tarefa extremamente necessária tanto para garantir sua qualidade quanto para gerar dados para uma possível auditoria. Dentre as ferramentas utilizadas para controlar as alterações, destaca-se o bugzilla, um sistema free e open source apoiado pelo projeto Mozilla. O bugzilla registra um ciclo de vida para cada alteração de código efetuada no projeto, desde a sua solicitação até a sua conclusão. Com ele é possível consultar em tempo real a quantidade de alterações do sistema, quais bugs estão sendo corrigidos, quem está corrigindo determinado bug, etc.

Controlar as alterações é importante, porém, o que garante que a alteração não afetou outras áreas ou funcionalidades do software? Não é muito prático para o desenvolvedor testar toda a aplicação para verificar se sua alteração não afetou outras funcionalidades. Ele ficaria mais tempo testando do que realizando as alterações necessárias. Para solucionar este problema, surgiu o conceito de testes unitários que assumem o papel de testar a aplicação.

Ser capaz de desenvolver testes unitários está cada vez mais sendo cobrado dos desenvolvedores, devido principalmente ao surgimento de metodologias que pregam seu uso. Dentre estas metodologias, a que mais de destaca é o TDD (Test Driven Development) que no ano de 2000 foi agregado ao XP (Extreme Programming). Traduzido a um grosso modo, TDD seria “testar antes de programar”, ou seja, desenvolver as classes e testes antes de desenvolver o sistema. Mas o que seria as classes de teste unitário? Simples, são classes que simulam o uso do sistema, informando dados de entrada e recebendo respostas do mesmo. Basicamente é comparado se a resposta obtida é a esperada.

Em Java, a biblioteca usada para criar testes unitários que mais de destaca é o JUnit. Criado por Erich Gamma and Kent Beck se tornou quase que unânime entre os desenvolvedores. Hoje existe várias extensões do JUnit, dentre eles pode-se destacar o Jakarta Cactus, utilizado para criar testes unitários para aplicações JEE.

Resumindo, a utilização de uma ferramenta para controle de alterações e de testes unitários deixa a manutenção de um sistema menos traumático e estressante para a equipe envolvida. Vale ressaltar que quanto mais controle se tem do processo menos desgastante ele será.

Anúncios

Deixe um comentário »

RSS feed for comments on this post. TrackBack URI

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

Blog no WordPress.com.
Entries e comentários feeds.

%d blogueiros gostam disto: