Pode -se acessar o testContext em um método AssemblyCleanup?
-
22-07-2019 - |
Pergunta
No espaço para nome unittersting da Microsoft (Microsoft.VisualStudio.TestTools.UnitTesting
) existem AssemblyInitialize
e AssemblyCleanup
Atributos que você pode aplicar a métodos estáticos e eles serão chamados antes e depois de todos os testes, respectivamente.
[AssemblyInitialize]
static public void AssemblyInitialize(TestContext testCtx)
{
// allocate resources
}
[AssemblyCleanup]
static public void AssemblyCleanup()
{
// free resources
}
Minha pergunta: é possível e seguro Para acessar o TestContext
dentro de AssemblyCleanup()
? Caso contrário, armazenar referências de recursos como membros estáticos é uma alternativa razoável ou isso também pode causar problemas?
Além/opcionalmente: qual é o raciocínio por trás não passando uma referência ao TestContext
para métodos de limpeza?
Solução
Estou acessando uma propriedade estática na mesma classe e parece estar funcionando bem. Vou atualizar esta resposta se encontrar algum problema. Eu sou não, no entanto, acessando o TestContext
Então, estou curioso para saber se isso funcionaria também.
Outras dicas
Você não pode passar nenhum paramaters para o método AssemblyCleanUp. Aqui está o erro se você tentar fazer isso:
Mensagem de resultado: Método Somenamespace.testdatabaseInitializer.ASSEMMBLYCLEANUP tem assinatura errada. O método deve ser estático, público, não retorna um valor e não deve tomar nenhum parâmetro.