Como o NUnit (e MSTest) Testes de lidar com essa mudança estáticos / variáveis ??compartilhadas?

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

Pergunta

Eu tenho algum código que usa o padrão de gateway compartilhado para implementar uma inversão do recipiente de controle. Eu tenho várias centenas de testes de unidade NUnit que exerce o código que usa esse COI. Todos eles trabalham (na minha máquina!), Mas eu estou preocupado que estes testes podem falhar sob carga. Eu me lembro que NUnit (e MSTest) tentativas para executar testes em paralelo em vários segmentos (que com certeza gostaria de condições de corrida gatilho na / gateway compartilhada estática), mas não consigo encontrar qualquer documentação que diz o que realmente acontece. Minha experiência é que NUnit parece estar a correr os testes sequencialmente. A minha pergunta é, será que NUnit (ou MSTest) nunca executar testes de unidade em paralelo? Se assim for, sob que condições? E, eu posso desligar isto através de algum tipo opção de configuração de?

Foi útil?

Solução

Update:

Visual Studio 2010 introduziu a capacidade de executar testes em paralelo.

Aqui está uma passo a passo artigo sobre como habilitar isso.

mstest:
Assim, de acordo com David Williamson, a partir do Microsoft Visual Studio Team System, em este post nos fóruns MSDN:

testes absolutamente não são executados em paralelos quando executado no VS ou através MSTest.exe. Se eles são executados em um Carga de ensaio através de VS, então, que é um história diferente. execução Basic, no entanto, é sempre serial.

Além disso, testes executados usando MSTest são cada corrida utilizando um segmento diferente, a fim de garantir que você tenha uma ardósia limpa para cada teste. Não há nenhuma maneira para desativar esse comportamento.

NUnit:
NUnit é executado todos os testes no mesmo segmento.

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