Ответ 1
Это, вероятно, не идеальное решение, но оно делает то, что вам нужно. Игнорируйте оставшиеся тесты, если тест не сработал.
[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();
}
}
}
Так как TestFixtureAttribute наследуется, вы можете создать базовый класс с этим атрибутом, украшенным на нем, и иметь в нем защищенный метод Ascertain и получить из него все классы TestFixture.
Единственным недостатком, вам придется реорганизовать все существующие утверждения.