Я чувствую себя несколько просвещенным, но раздражен тем, что обнаружил.
Это мой первый проект, использующий MSTest, и после неудачного теста я выбрал Просмотреть подробности теста , чтобы увидеть, как и почему мой тест не прошел. Форматирование для вывода строки в этом подробном отображении очень плохое, например, вы получаете:
Assert.AreEqual failed. Expected:<TestTest End>. Actual:<TestTest End>.
Это для форматированного текста - странная вещь, если у вас есть /r
(переводы строк) вместо разрывов строк (/n
), форматирование на самом деле несколько корректно.
Получается, что вы видите правильный вывод, необходимый для запуска тестов в режиме debug . Другими словами, если у вас есть провальный тест, запустите тест в отладке, и исключение будет перехвачено и отображено следующим образом:
Assert.AreEqual failed. Expected:<Test
Test End>. Actual:<Test
Test End>.
Выше, очевидно, содержит правильное форматирование.
В итоге оказывается, что мой первоначальный метод хранения ожиданий (с форматированием) в строках был верным, но мое незнакомство с MSTest заставило меня подвергнуть сомнению мои средства, так как они казались действительными, но все же просто отображались обратно Я в том, что появилось действительный вывод.