A melhor maneira de executar testes de unidade após cada commit? - svn - ramo por recurso

StackOverflow https://stackoverflow.com/questions/99654

Pergunta

O que é a melhor maneira de executar o seu conjunto de testes de unidade após cada commit?

Eu estou particularmente interessado no caso que você faz todos os seus recursos / alterações em ramos e manter a sua estabilidade de tronco.

O meu controle de origem é SVN e eu uso tartaruga SVN como o meu cliente.

Existe um evento SVN ou algo nesse sentido que eu possa chamar a / .cmd .bat?

Se a resposta for cruisecontrol, como você verificar todos os ramos com controle de cruzeiro?

Foi útil?

Solução

Gostaria de pensar que você provavelmente deve estar executando os testes de unidade antes a cometer. Se você estiver indo para teste em cada commit, você deve fazê-lo cedo o suficiente para rejeitar quebrando alterações.

Você pode fazer isso com subversão ganchos. Se você adicionar um gancho pre-commit, você pode fazer uma compilação / teste antes da submissão ocorre. O script de gancho será executado no servidor.

Outras dicas

Você precisa de um Integration Server contínua como CruiseControl. Isto irá monitorar SVN para alterações, fogo baseia-se em um commit, segui-lo com um teste-suite e bandeira quaisquer erros diretamente na bandeja do sistema (ou e-mail ou qualquer notificação você se sinta confortável) Você precisará configurar sua CruiseControl por escrever um pequeno script (XML principalmente) que define suas necessidades de projeto. Recomendado .. você não vai voltar uma vez que você provou. Aqui está um que eu configurar volta no dia

Atualizar : Eu não acho que há uma verificação global de todos os ramos tipo de configuração. Cada ramo deve ser um url tronco diferente ... o que significa um projeto diferente para CruiseControl. Se você seguir a maneira recomendada de subversão ramificação ( ver aqui ), desde si CruiseControl parece estar usando ramos no Subversion .. este parece ser o caminho a percorrer.

eu iria configurar um processo de criação / implantação automatizada também. Confira Cruise Control -. Ele pode executar os testes de unidade antes de implantar

http://cruisecontrol.sourceforge.net/

Use Buildbot .

Isto tem um utilitário chamado svn_buildbot.py que pode ser chamado a partir de sua subversão pós-commit script.

Buildbot é subversão longe (bem como uma série de outros sistemas de VC), de modo que pode ser configurado para puxar novas revisões dos ramos que você já cometidos em. Ele também fornece notificações de e-mail e uma interface web para verificação do estado e forçando constrói numa revisão particular, / galho.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top