Каков наилучший способ фильтрации ошибок / сбоев в файлах JUnit? - PullRequest
0 голосов
/ 13 октября 2011

Мое подразделение использует непрерывную интеграцию, но наш продукт и процесс не очень хорошо подходят для модели, согласно которой ошибки должны быть исправлены немедленно (долгое время выполнения, общие ресурсы, старые инструменты VCS и т. Д.). CI по-прежнему полезен для быстрого выявления проблем и выявления виновных. У меня есть сценарий, который может прочитать XML-файл JUnit и определить, какие сбои отфильтровать и записать новый отфильтрованный выходной файл, но я хотел бы включить в файл информацию, которую можно увидеть в инструментах CI, которая объясняет, почему он был отфильтрован. К сожалению, элементам testcase и testsuite, похоже, не хватает узла. Есть ли место в формате, где я могу разместить эту информацию?

<testsuites>
  <testsuite name="name">
    <testcase name="name">
      <failure>some message</failure>
    </testcase>
  </testsuite>
</testsuites>

На что-то вроде:

<testsuites>
  <testsuite name="name">
    <testcase name="name">
      <failure>some message
Filtered: See bug #####</failure>
    </testcase>
  </testsuite>
</testsuites>

1 Ответ

0 голосов
/ 14 октября 2011

Вы можете просто изменить тест. Если текущий код

Assert.fail("some message")

изменить на

Assert.fail("some message\nFiltered: See bug #####")

Вы также можете добавить сообщение для утверждения ... методов. Используйте

Assert.assertEquals("Filtered: See bug #####", expectedValue, actualValue)

вместо

Assert.assertEquals(expectedValue, actualValue)
...