Я виявив, що, здається, це два основні способи тестування на винятки:
Assert.Throws<Exception>(()=>MethodThatThrows());
[ExpectedException(typeof(Exception))]
Яке з них було б найкращим? Чи пропонує один перевага перед іншим? Або це просто питання особистої переваги?
ExpectedExceptionатрибут, тому для версії 3+ Assert.Throwsактуальний лише варіант.
Assert.That(() => MethodThatThrows(), Throws.Exception)