Ces trois tests sont identiques, sauf qu'ils utilisent une fonction statique différente pour créer une instance StartInfo. J'ai ce modèle à venir tout au long de mon code de test, et j'aimerais pour être en mesure de simplifier cela en utilisant [TestCase], ou de toute autre manière qui réduit le code standard. Au meilleur de ma connaissance, je ne suis pas autorisé à utiliser un délégué comme argument [TestCase], et j'espère que les gens ici auront des idées créatives sur la façon de rendre le code ci-dessous plus concis.Comment simplifier ces tests NUNit?
[Test]
public void ResponseHeadersWorkinPlatform1()
{
DoResponseHeadersWorkTest(Platform1StartInfo.CreateOneRunning);
}
[Test]
public void ResponseHeadersWorkinPlatform2()
{
DoResponseHeadersWorkTest(Platform2StartInfo.CreateOneRunning);
}
[Test]
public void ResponseHeadersWorkinPlatform3()
{
DoResponseHeadersWorkTest(Platform3StartInfo.CreateOneRunning);
}
void DoResponseHeadersWorkTest(Func<ScriptResource,StartInfo> startInfoCreator)
{
ScriptResource sr = ScriptResource.Default;
var process = startInfoCreator(sr).Start();
//assert some things here
}
m'a appris un nouveau concept !!! plus +1 – Prashant
+1 gentil. Voici un lien [NUnit doc avec des exemples] amélioré (http://nunit.org/index.php?p=testCaseSource&r=2.10.10). –