Я пишу некоторые модульные тесты, используя интегрированную инфраструктуру Visual Studio. Мне нужно написать несколько тестовых примеров, которые передаются при создании правильного исключения. Проблема в том, что исключения, которые мне нужно проверить, - это внутренние исключения, вложенные в более общий. Есть ли какое-то простое решение или мне нужно расширить всю функциональность. В настоящее время я использую атрибут [ExpectedException], но в такой ситуации он не будет очень хорош.Тестирование модулей для внутренних исключений
Мне также интересно, что происходит, когда мы используем [ExpectedException], в то время как у нас также есть логика Assert в самом тесте. Являются ли оба условия оценены (исключение выбрано и утверждение Assert оказалось действительным), или тест проходит сразу после того, как выбрано правильное исключение?
Не используйте атрибут «ExpectedException» (тест может пройти из-за какой-либо фазы аранжировки, вызванного тем же самым исключением, а не фазой действия); Используйте 'Assert.Throws' –
В структуре VS нет метода «Броски». Для большинства случаев я использую пользовательские исключения, чтобы сделать использование атрибута достаточно точным. – zhulien