Есть ли способ добавить пользовательское сообщение к результату тестового метода? Я хочу поставить секундомер на часть кода, чтобы увидеть, как долго он работает. Мне не нужно проверять, что он работает в течение определенного периода времени, просто хочу увидеть в окне результатов, что истекшее время.
Добавить пользовательское сообщение в результат unit test
Ответ 1
Предполагая, что вы используете MSTest, вы можете использовать
System.Diagnostics.Trace.WriteLine("Hello World");
Вывести все, что захотите. Он будет отображаться в результатах теста.
Ответ 2
Приведенный выше пример не сработал у меня, но следующее:
var result = routeManager.UpdateWalkingOrder(previouspremiseFuncLoc, premiseFuncLoc, out message);
Assert.AreEqual(true, result, message);
Если сообщение является любой ошибкой, которую я хочу отобразить в диалоговом окне "Сообщение об ошибке" моего тестового результата. В приведенном выше примере я возвращаю ошибки, которые фиксируются при выполнении этой функции и показывая ее в моих результатах теста, что очень помогает при отладке.
В вашем случае вы можете просто отобразить время выполнения.
Ответ 3
Я пошел тем же путем, пытаясь найти способ вывода сообщения для тестирования результатов. Вы можете просто сохранить свой elapsedtime
в String
и просто использовать:
Console.WriteLine(elapsedtime);
Работал для меня просто отлично.
Ответ 4
В зависимости от длины сообщения вы можете использовать Console.WriteLine
. Он добавляется в результаты теста, имя столбца Output (StdOut)
, поэтому вы можете увидеть его, не вдаваясь в подробности тестового прогона.
Мне представляется полезным выводить некоторую очень общую информацию, такую как количество тестируемых свойств или любое другое доказательство того, что тесты были фактически запущены.
Если у вас нет сообщения о статусе, что, если кто-то саботировал ваш код и удалил все из тела метода тестирования? Они все проходят сейчас, но это совсем не помогает.