Probablemente esta no sea la solución ideal, pero hace lo que necesita, es decir, Ignora las pruebas restantes si una prueba ha fallado.
[TestFixture]
public class MyTests
{
[Test]
public void Test1()
{
Ascertain(() => Assert.AreEqual(0, 1));
}
[Test]
public void Test2()
{
Ascertain(() => Assert.AreEqual(1, 1));
}
private static void Ascertain(Action condition)
{
try
{
condition.Invoke();
}
catch (AssertionException ex)
{
Thread.CurrentThread.Abort();
}
}
}
Desde TestFixtureAttribute es heredable, por lo que potencialmente podría crear una clase base con este atributo decorada en él y tener la Averiguar Método protegido en ella y obtener todas las clases TestFixture de ella.
El único inconveniente es que tendrá que refactorizar todas sus afirmaciones existentes.
Creo que esto es una pregunta específica para el corredor de pruebas, entonces, ¿cómo se ejecutan las pruebas? NUnit-console, msbuild NUnit task, ¿otro corredor? – sll