Можно ли настроить вывод NUnit XML - PullRequest
6 голосов
/ 08 февраля 2010

Я смотрю на вывод NUnit XML прямо сейчас и задаюсь вопросом, возможно ли сгенерировать вывод только для сбоев .

Я имею в виду, что если тест проходит нормально, то для него вообще не генерируется вывод XML.

( ОБНОВЛЕНИЕ : XSLT здесь не вариант. Я вообще не хочу вывод XML для пройденных тестов : если мне не нужны подробности о пройденные тесты, я не хочу, чтобы система тратила время на генерацию этих деталей.)

Идея в том, что вывод XML, как правило, достаточно велик, если у вас много тестов, но в любом случае 80% времени вы получаете после сбоев. В таких случаях я хотел бы выполнить свои тесты таким образом, чтобы генерировалась только информация о сбоях.

Ответы [ 3 ]

4 голосов
/ 08 февраля 2010

Вы можете указать файл XSLT при запуске консоли запуска NUnit для настройки сгенерированного файла:

nunit-console /transform:failures.xslt nunit.tests.dll

XML-файл по умолчанию создается с использованием этого XSLT-файла, который можно легко изменить, чтобы сообщать только о сбоях.

1 голос
/ 08 февраля 2010

Опубликовал этот вопрос в NUnit Google Group, и Чарли Пул подтвердил , что такой опции нет.

0 голосов
/ 03 июня 2013

Я не могу гарантировать, работает ли он, но, возможно, вы можете написать свой собственный надстройку, чтобы добиться того, чего вы хотите. Если вы подключитесь к точке расширения «EventListeners» с помощью своего надстройки, ваш метод TestFinished (TestResult tr), который вам придется реализовать, будет вызываться всякий раз, когда тест завершается. Просто считайте результат и установите для свойства WriteResultEntry значение true только для неудачных тестов. Ну, я не уверен, что Чарли реализовал последнее свойство, но если нет, ваш плагин все еще может создать свой собственный файл результатов NUnit только для неудачных тестов.

/// <summary>
/// Test finished.
/// </summary>
/// <param name="result">The result.</param>
public void TestFinished(TestResult result)
{
   if (!result.IsFailure)
   {            
      result.WriteResultEntry = false;
   }
}

Если такого свойства WriteResultEntry нет, попросите Чарли реализовать его или создать свой собственный отчет о результатах, записывая выходные данные только тогда, когда result.IsFailure имеет значение true.

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