Pergunta

Eu estou olhando para adicionar uma suite de testes para a minha aplicação, no entanto, eu não posso mover-se para o mais recente teste de quadros .NET 3.5.

Alguém tem uma sugestão sobre o bom estruturas de teste para usar?

Foi útil?

Solução

Nós usamos O mbunit e Rihno Zomba e eles provar a trabalhar muito bem juntos.Ao fazer TDD, você vai precisar quase de certeza de fazer algum tipo de injeção de dependência, enquanto isso pode ser feito manualmente, vale a pena olhar para um contêiner IoC, tais como O Castelo De Windsor.

É bem a pena olhar para João Paulo Bodhood da tela moldes para você começar. JPB do Blog

Outras dicas

O NUnit e Rhino atender bem e o auto-escárnio recipiente pode ser do seu interesse.

Se você está olhando para o BDD também, então NBehave é provavelmente uma boa escolha.No entanto, se você apenas quer dizer que o estilo de BDD que se relaciona com o teste de unidade (xSpec) que você pode começar afastado com a adição de um quadro (apesar de coisas como specunit adicionar alguns synctactic de açúcar), mas você pode querer olhar para MSpec também é interessante.

Confira Rob Conery do screencast sobre BDD usando MSpec.Muito impressionante http://blog.wekeroad.com/mvc-storefront/kona-3/

editar:Agora eu uso essa abordagem: http://10printhello.com/the-one-bdd-framework-to-rule-them/

Para um Mock Object library, eu encontrei o BSD-licenciados Rhino.Zomba para ser bastante agradável.

Eu tive grande sucesso usando O NUnit bem.

Eu também usei NMock quando surgiu a necessidade de objetos mock.Como um bônus adicional, a fábrica para criar seus objetos de simulação é chamado de Zombaria.

Para facilitar a execução de testes de unidade, eu usei TestDriven.NET para executar os testes unitários como eu codificado.Além disso, eu usei Controle De Velocidade De Cruzeiro .NET para assistir SVN e verificar que a cada novo commit cria e passa em todos os testes de unidade.

Este é, provavelmente, um resumo do que já foi dito, mas para TDD eu pessoalmente uso de Rinoceronte Mocks e o mbunit.Rhino Mocks é um escárnio quadro que é livre e de código aberto.A vantagem de Rinoceronte Zomba de nós não precisa usar cordas mágicas na definição de suas expectativas, como você faz em NMock.

Eu como o mbunit porque o mbunit tem o conceito de RowTests que permitem variar o seu entradas do seu método de ensaio.O mbunit também está disponível gratuitamente.

Você também deseja certificar-se de que o que você escolher para a sua unidade framework de testes é suportado pelo seu CI (Continuous Integration Server).O Nunit é suportado por padrão no Cruzeiro Control.NET e você tem que fazer um pouco mais de trabalho para obter o mbunit para trabalhar em ccnet.

A partir de uma IDE ponto de vista, você deve ter TestDriven.NET.TestDriven.NET permite que você clique com botão direito e executar testes no IDE e suporta o mbunit e Nunit e outros.

NBehave é o BDD biblioteca de eu ter usado.Eu não tenha usado quaisquer outros, então eu não poderia comparar e contrastá-los com você, mas NBehave é suportado por Gálio a partir de o o mbunit equipe, o que significa que você pode executar o BDD os testes apenas como você faria com os seus testes de unidade com TestDriven.NET.

Eu também recomendo a Resharper.Você vai encontrar a sua produtividade aumentar significativamente com esta refatoração e uma ferramenta de orientação.Ele irá ajudá-lo com a mudança de seu código como você está desenvolvendo seus testes.

Espero que isso ajude

Eu vou ter que colocar um grito para Moq.Ele é limpar a luz de escárnio framework que ajuda a guiá-lo para o abismo do sucesso.

As ferramentas de teste embutido no TFS estão bem, eles vão começar o trabalho feito, mas muitas vezes pode ser um pouco complicado para se trabalhar.Os relatórios gerados, cobertura de código e algumas outras partes são particularmente ruins, eles fazem você ficar careca, aos 22, em vez de 50.

Se você está realmente amando o teste, considere a tentativa de alguns de Integração Contínua.Você vai sentir a dor de regressão rapidamente e, potencialmente, ajudar você a obter o objetivo final mais rápido.

Independentemente do que você fizer experimentar um pouco e ver qual é o mais natural, se você tiver tempo.Boa sorte e feliz de codificação.

Usando o nUnit com o TFS não é muito difícil.Há até um projeto no codeplex para implementar este: O NUnit para a Equipe de Construir que mesmo "publica" os resultados para o armazém.

Eu ainda não tentei, mas eu gostaria de aconselhar os clientes que têm um grande investimento (ou que têm uma forte preferência por ele sobre o MSTest tool) no nUnit que estão interessados em implementar o TFS para continuar com o nUnit ao invés de tentar converter todos os seus testes existentes.

O NUnit está disponível em http://www.nunit.org Gostaria de sugerir, mesmo quando trabalhando no MS pilha - o suporte para não-MS quadros está acontecendo no MVC visualizações que mostra um movimento definido na direção certa para permitir que todos nós personalizar o nosso pilhas para ajuste.

O NUnit é sempre um dos meus favoritos.No entanto, se você estiver usando o TFS como sua fonte de controle, eu sugiro que você fique com o Microsoft Pilha.

Eu recomendo o seguinte:

TestDriven.NET - Os Testes de unidade add no VS que está totalmente integrado com as principais estruturas de teste de unidade, incluindo o NUnit, o mbunit etc...

Typemock Isolador- O escárnio quadro .Líquido De Teste De Unidade

O NUnit - Uma unidade de código aberto framework de testes que está em C#.

Para o meu projeto, eu usei o NUnit e TestDriven.NET com grande sucesso.Você pode criar uma biblioteca separada apenas para hospedar seu código de teste ou você pode colocá-lo em seu executável ou uma biblioteca.Tudo depende se você quer que seu código de produção para ser entrelaçam-se com o seu código de teste.

Para a Injeção de Dependência, eu uso NInject no meu projeto atual e o seu grande trabalho.Se você usar o Construtor de injeção, você não precisa encher o seu código com o [Injetar] atributo.

Eu não usei a simulação de uma biblioteca para o meu .NET 2.0 projeto, mas para o outro .NET 3.5 projeto vou usar Moq

Note que isto não funciona com .NET 2.0 e superior.(exceto Moq)

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