Utilizando Cruise Control para aplicações .NET
Por mais que tenha um grande experiência com desenvolvimento de sistemas em Java, alguns das aplicações, principalmente para supervisórios, tenho que fazê-los em .NET, por diversos motivos (facilidade no uso de COM e DCOM, OPC, etc). Ao utilizar o .NET, fora o domínio que não é tão grande quanto domino o Java, sempre senti falta de diversos recursos, como por exemplo: bilbioteca de teste unitário, behavior test, bibliotecas que encapsulem processos trabalhosos, servidores de integração continua, etc. Parti do pressuposto que algo similar deveria existir para .NET e me pus a procurá-los.
Nessas buscas pela internet (Deus abençoe o Google) acabei achandos, os similares a diversas coisas que temos para Java : hibernate -> nhibernate, ant — >nant, junit —> nunit… e por ai vai… Ainda me restava achar algo para realizar o build de forma integrada, ou seja, integration continuous. Acabei encontrando o Cruise Control (que já utilizei para Java) e vi que eles portaram quase todas as funcionalidades existente na versão Java para a versão .NET.
O Cruise Control é uma ferramenta feita, creio eu, pelo pessoal da ThoughtWorks, cuja a função é realizar builds da aplicação de forma integrada, por exemplo: ao commitar uma modificação no seu SOurce Safe ou CVs ou SVN, esta ferramenta é capaz de executar os teste unitários para verificar a integridade, executar teste de cenários (behavior tests), criar um build (caso todos os testes deêm ok) e avisar a todos do status do projeto. Isso, para um projeto grande, com uma equipe relativamente numerosa, representa um “mão na roda” e facilita muito a vida e aumenta a qualidade e permite manter no controle de versão um build estável.
Pretendo utilizá-lo num projeto que devo começar (o mesmo que vou usar o SCRUM – vai ser um verdadeiro laboratório) e assim que for evoluindo em seu uso vou postando pequenos tutoriais e relatos de experiências.