Как регистрировать ошибки, сообщения в модульном тесте NUnit? - PullRequest
7 голосов
/ 26 марта 2009

В графическом интерфейсе NUnit есть несколько вкладок: alt text

Я понимаю, что при использовании Console.WriteLine (...) отображаются сообщения на вкладке "Console.Out". У меня вопрос, для чего нужны другие вкладки и как я могу записывать в них сообщения?

[EDIT]

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

==== TEST1 starts ====
Start Time: 2009-03-26 11:15:13 AM
Checking operation 1....OK
Checking value of variable "X": 52.56....OK
End Time: 2009-03-26 11:15:19 AM
Time taken to execute test: 0.00:00:06.000

==== TEST2 starts ====
.
.

Есть предложения, как мне этого добиться?

Ответы [ 3 ]

2 голосов
/ 26 марта 2009

Настройки для вкладок находятся в параметрах NUnit - см. Документы здесь .

Например, если вы установите флажок Отображать вывод ошибок консоли, на этой вкладке будет отображаться текст, записанный в Console.Error вашими тестами.

1 голос
/ 26 марта 2009

Пример:

    Assert.AreNotEqual(0, result.Count);
     [exec]
     [exec] Tests run: 11, Failures: 1, Not run: 0, Time: 50.422 seconds
     [exec]
     [exec] Failures:
     [exec] 1) Domain.UnitTest.ManagerTest.TestEmbeddedIndex
 :   Expected: not 0
     [exec]   But was:  0
     [exec]

Это то, что вы ищете?
Утверждаю очень обширно. При невыполнении одного из условий Nunit выдает ошибку.

Assert.AreEqual(),Assert.AreSame(), Assert.Contains(),Assert.Fail();

Кроме того, в Nunit есть такие вещи, как

[ExpectedException] 

Изучите документацию , чтобы узнать больше ..


На основе Редактировать обновление:
На вашем месте я бы сделал это как часть механизма сборки. В nant я бы сделал что-то вроде этого ...

<target name="setup" description="Initializes test properties">
    <echo message="Sucessfully initialized tests" />
</target>

Отображение консольных сообщений после каждого [Test] - плохая идея, ИМХО. Это задерживает тесты, которые учитываются при запуске тысяч из них. Тесты должны быть невероятно быстрыми.

0 голосов
/ 08 марта 2019

Это существующий функционал. Запустите тест и сгенерируйте отчет NUnit. Все ошибки подтверждения, которые вы регистрируете в своих тестах, будут видны в отчете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...