Porquê gerar Tags no SVN/CVS?

Gerar tags no SVn ou CVS é necessário para que o código fique “congelado” enquanto são executados os testes, sejam eles manuais ou automatizados.

Mas por quê isto é necessário?
Em primeiro lugar, quando uma funcionalidade é liberada para testes, ela é sempre passível de ser quebrada por outras funcionalidas. Isto gera sempre um impasse: por quê o testador não viu esse erro absurdo?

E a resposta é simples: porque o erro pode ter sido inserido depois de terem sido realizados os testes. No caso de dúvidas, é sempre possível se restaurar a Tag na qual foi testada a funcionalidade e checar se foi realmente isto que aconteceu.

E os benefícios para o desenvolvedor?

A funcionalidade testada de forma isolada permite sabermos que o desenvolvedor entregou tudo funcionando na data da entrega do UC. Quando todos os UCs estiverem terminados, serão feitos os testes de sistema, que são resultado da integração entre os Casos-de-Uso.

Assim, com este simples recurso poderemos ver se existiu algum impacto de um caso-de-uso em outro simplesmente executando um teste de regressão. Se encontrarmos algum problema nos testes de sistema não é um bug da entrega do UC, mas sim um bug inserido posteriormente resultado do impacto da alteração em outra funcionalida.

Um script básico de processo para empresas pequenas seria:

Se o UC está pronto (desenvolvido e testado pelo desenvolvedor):
1. O código é commitado no CVS/SVN
2. Cria-se uma Tag  isolando o sistema na versão na qual está funcionando o UC
3. São feitos os testes no UC liberado

Algumas empresas executam testes de software somente depois de as funcionalidades estarem funcionando.
Mas o que a equipe de testes sempre defende é que deixar para testar tudo no final é sempre um risco maior porque o tempo de testes diminui e a pressão aumenta. E esta é uma realidade que vivemos constantemente!

Então? Que tal repassarmos aplicarmos este princípio básico no desenvolvimento de software de pequenas equipes?

Anúncios

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