Каков наилучший способ фильтрации ошибок / сбоев в файлах JUnit?

Мое подразделение использует непрерывную интеграцию, но наш продукт и процесс плохо подходят для модели, согласно которой ошибки должны быть исправлены немедленно (длительное время выполнения, общие ресурсы, старые инструменты 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 ответ

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

Assert.fail("some message")

измените это на

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

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

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

вместо

Assert.assertEquals(expectedValue, actualValue)
Другие вопросы по тегам