Attualmente sto sviluppando un'applicazione di esempio in cui utilizzo MS Test per implementare un progetto UnitTest basato su scenario in base a quando in VS2012. Per farlo funzionare ho una classe astratta di Scenario (base) che ha metodi virtuali Given() - e When() - che vengono eseguiti durante la fase TestInitialization. I risultati del metodo When() sono quindi memorizzati e possono essere verificati utilizzando TestMethods arbitrari in qualsiasi classe Scenario concreta, che rappresenta le istruzioni "Then". Tutto funziona perfettamente.MSTest: Come cambiare il nome di TestMethod in TestExplorer?
C'è ancora una cosa che vorrei controllare, però: i nomi di tutti i TestMethods come sono mostrati nel TestExplorer di Visual Studio. Questo perché molti TestMethod hanno nomi uguali o simili, ma vengono eseguiti in scenari diversi (come "ExpectedExceptionIsThrown"). Avrei pensato una cosa del genere sarebbe sostenuto da MS Test, forse per il supporto nativo del TestMethodAttribute in questo modo:
[TestMethod("DisplayName here...")]
public void ThenThisShouldHappen()
{
...
}
Ho guardato attraverso le API di MS di prova, ma non riesco a trovare alcun modo per fare questo. Questo è possibile con MS Test?
Non riesco a vedere in alcun modo. A proposito, hai pensato di usare l'estensione SpecFlow a VS dal momento che supporta Given When Then in modo nativo e fornisce un supporto editoriale eccezionale per i test BDD? – kamranicus
Pensando anche a questo problema. –
Anche questo problema. C'è il [DescriptionAttribute] (https://msdn.microsoft.com/library/microsoft.visualstudio.testtools.unittesting.descriptionattribute.aspx) ma per quanto posso dire che non fa nulla. – talles