Как мне принудительно использовать сообщение об исключении с атрибутом ExpectedException

Я думал, что эти два теста должны вести себя одинаково, на самом деле я написал тест в своем проекте с помощью MS Test только для того, чтобы теперь узнать, что он не учитывает ожидаемое сообщение так же, как NUnit.

NUnit ( терпит неудачу ):

[Test, ExpectedException(typeof(System.FormatException), ExpectedMessage = "blah")]
public void Validate()
{
    int.Parse("dfd");
}

MS Test ( проходит ):

[TestMethod, ExpectedException(typeof(System.FormatException), "blah")]
public void Validate()
{
    int.Parse("dfd");
}

Независимо от того, какое сообщение я передаю тесту ms, он пройдет.

Есть ли способ заставить тест ms не пройти, если сообщение неправильное ? Могу ли я даже создать свой собственный атрибут исключения? Я бы предпочел не писать блок try catch для каждого теста, где это происходит.

31
задан abatishchev 16 May 2012 в 14:02
поделиться