Как делают я использую, Утверждают. Броски для утверждения типа исключения?

Первая вещь, которую я сделал бы, кладут листок бумаги или книгу по Вашим клавишам со стрелками и Вашим ins/home/end/pgup/down ключам. Это не необходимо в Vi.

Следующий я привык бы к удару ctrl + [каждый раз, когда Вам говорят поразить Escape. Это намного быстрее, и Вы не должны будете убирать руки от клавиатуры.

Затем я наблюдал бы свои скринкасты:

http://www.youtube.com/watch?v=FcpQ7koECgk

http://www.youtube.com/watch?v=c6WCm6z5msk

http://www.youtube.com/watch?v=BPDoI7gflxM

http://www.youtube.com/watch?v=J1_CfIb-3X4

Затем просто практика практики практики.

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

225
задан Liam 7 February 2018 в 02:04
поделиться

1 ответ

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

var ex = Assert.Throws<Exception>(() => user.MakeUserActive());
Assert.That(ex.Message, Is.EqualTo("Actual exception message"));

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

Используя этот шаблон, вы можете утверждать другие вещи, кроме сообщения об исключении, например, в случае из ArgumentException и производных, вы можете утверждать, что имя параметра правильное:

var ex = Assert.Throws<ArgumentNullException>(() => foo.Bar(null));
Assert.That(ex.ParamName, Is.EqualTo("bar"));

Вы также можете использовать Fluent API для выполнения этих утверждений:

Assert.That(() => foo.Bar(null), 
Throws.Exception
  .TypeOf<ArgumentNullException>()
  .With.Property("ParamName")
  .EqualTo("bar"));

Небольшой совет при утверждении сообщений об исключениях - украсить тестовый метод атрибутом SetCultureAttribute , чтобы убедиться, что генерируемое сообщение использует ожидаемую культуру. Это вступает в игру, если вы сохраняете сообщения об исключениях в качестве ресурсов для локализации.

406
ответ дан 23 November 2019 в 03:55
поделиться
Другие вопросы по тегам:

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