Игнорирование исключений в тесте MSTestC#

Место общения программистов C#
Anonymous
Игнорирование исключений в тесте MSTest

Сообщение Anonymous »

Предположим, мы хотим протестировать следующий метод. Это надуманный сетевой вызов, который регистрирует предупреждение, если запрос не удался, а затем выдает его после трех попыток.

Код: Выделить всё

    private async Task ContrivedNetworkRequest(ILogger logger, HttpClient client)
{
for (var i = 0; i < 3; i++)
{
var response = await client.GetAsync("http://example.com");
if (response.IsSuccessStatusCode)
return response;

logger.LogWarning("Warning!");
}

throw new ContrivedException("Error!");
}
Мы хотим только проверить, был ли записан журнал предупреждений. То есть мы не хотим проверять, что метод выдает ошибку. Выдача тестируется в другом месте, и мы не хотим, чтобы два утверждения тестировали как регистрацию, так и выдачу в одном и том же тесте для этого сценария.
Есть ли способ сообщить MSTest V3 (с .NET 8) просто выйти из тестируемого метода при возникновении исключения, поскольку нас интересуют только другие функции?

Подробнее здесь: https://stackoverflow.com/questions/790 ... stest-test

Вернуться в «C#»