Estas tres pruebas son idénticas, excepto que usan una función estática diferente para crear una instancia de StartInfo. Tengo este patrón que viene a través de mi código de prueba, y me encantaría para ser capaz de simplificar esto usando [TestCase], o de cualquier otra manera que reduzca el código repetitivo. A mi leal saber y entender, no tengo permitido usar un delegado como argumento [TestCase], y espero que las personas aquí tengan ideas creativas sobre cómo hacer que el código sea más conciso.¿Cómo simplifico estas pruebas de 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
}
me enseñó un nuevo concepto !!! más +1 – Prashant
+1 agradable. Aquí hay un [enlace de documentación de NUnit mejorado con ejemplos] (http://nunit.org/index.php?p=testCaseSource&r=2.5.10). –