Ci viene richiesto di passare da NUnit a MSTest e ora è necessario convertire tutti i test esistenti nella nuova piattaforma. La maggior parte è convertita bene ma abbiamo un problema con i test parametrizzati. Abbiamo trovato il seguente sito Web che mostra come scrivere un'estensione e scaricato il codice per esso.Test unitario - Estensione del tipo di test dell'unità Visual Studio - Non funziona
Tuttavia, anche se si compila bene, il test RowTestClass tutto non riescono a correre con il seguente messaggio di errore:
"Impossibile inizializzare l'estensione unit test 'urn: RunAsTestClassAttribute': A l'estensione di test dell'unità non è registrata per il seguente attributo: Microsoft.VisualStudio.Test.Sample.UnitTestTypeExtension.RunAsSample.RunAsTestClassAttribute. "
Stiamo usando VS2010 (10.0.40219.1 SP1Rel) (Microsoft .NET Framework versione 4.0.30319 SP1Rel)
Mi chiedo se ha qualcosa a che fare con le seguenti librerie:
Microsoft.VisualStudio.QualityTools.Common.dll
Runtime Version: v2.0.50727
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\ReferenceAssemblies\v2.0\Microsoft.VisualStudio.QualityTools.Common.dll
Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll
Runtime Version: v4.0.30319
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll
Microsoft.VisualStudio.QualityTools.Vsip.dll
v4.0.30319
C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Microsoft.VisualStudio.QualityTools.Vsip\v4.0_10.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.QualityTools.Vsip.dll
Qualsiasi aiuto per ottenere questo funzionamento è molto apprezzato.
Perché è necessario passare un parametro nel metodo di test dell'unità? –
Fondamentalmente non dover ripetere lo stesso codice per ogni parametro di test. Mantiene pulito il codice evitando di dover utilizzare la logica come loop con istruzioni if o switch o creando dipendenze a file o database esterni. – ArchiFactor
Avrei il metodo di prova chiamare un altro metodo non test che accetta i parametri e fa le asserzioni appropriate. –