Утверждают. Сбой () рассмотренный плохой практикой?

напишите это:

.class {
background-color:transparent;
}
67
задан Mendelt 23 September 2008 в 13:13
поделиться

1 ответ

Это шаблон, который я использую при написании теста для кода, который я хочу создать исключение по дизайну:

[TestMethod]
public void TestForException()
{
    Exception _Exception = null;

    try
    {
        //Code that I expect to throw the exception.
        MyClass _MyClass = null;
        _MyClass.SomeMethod();
        //Code that I expect to throw the exception.
    }
    catch(Exception _ThrownException)
    {   
        _Exception = _ThrownException
    }
    finally
    {
        Assert.IsNotNull(_Exception);
        //Replace NullReferenceException with expected exception.
        Assert.IsInstanceOfType(_Exception, typeof(NullReferenceException));
    }
}

IMHO, это лучший способ тестирования исключений, чем использование Assert. Потерпеть поражение(). Причина этого в том, что я не только проверяю возникновение исключения, но также проверяю тип исключения. Я понимаю, что это похоже на ответ Мэтта Хауэллса, но IMHO использование блока finally более надежно.

Очевидно, все еще можно было бы включить другие методы Assert для проверки входной строки исключений и т. Д. Я был бы признателен за ваше комментарии и мнения о моем шаблоне.

4
ответ дан 24 November 2019 в 14:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: