как получить результаты nunit в базу данных

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

Таким образом, возможно ли получить эту информацию при разборке, если текущий запущенный тест находится в состоянии прохождения или сбоя, а также информацию, такую ​​​​как имя теста и, если он не прошел, причину сбоя.

Спасибо


person fohtoh    schedule 01.12.2010    source источник
comment
Хорошо, так что я, наконец, получаю возможность дать этому шанс. По какой-то причине я не вижу свой созданный аддон в списке аддонов nunit tools.   -  person fohtoh    schedule 11.12.2010


Ответы (2)


В NUnit версии 2.4.4 или выше вы можете получить TestResult, как это происходит, используя EventListeners - вам нужно записать свои результаты в БД из метода TestFinished.

void TestFinished(TestResult result);

Имя теста будет именем самого последнего TestStarted вызова:

void TestStarted(TestName testName);

Для этого необходимо реализовать надстройку NUnit, реализующую EventListeners интерфейс.

person Steve Townsend    schedule 01.12.2010
comment
Я думаю, это то, что я ищу. Есть ли хорошая статья о том, как это сделать? Спасибо за быстрый ответ. - person fohtoh; 01.12.2010
comment
Я только что отредактировал ответ - вам нужно создать собственную надстройку NUnit с этим интерфейсом. - person Steve Townsend; 01.12.2010

Вы хотите видеть результаты, как они происходят, или в конце? Если вы просто хотите увидеть их в конце, вы можете заставить NUnit записать их в файл XML:

nunit-console /xml:console-test.xml nunit.tests.dll

Затем вы можете написать программу для разбора XML и загрузки его в базу данных.

Чтобы видеть результаты тестирования по мере их появления, вы можете написать собственный плагин журнала NUnit.

person Tim Robinson    schedule 01.12.2010