Пользовательский отчет JUnit?

Я использую «junit» и «junitreport» для муравьев, чтобы запускать тесты JUnit и генерировать отчет в конце (=> «Результаты тестирования единицы»).

Есть ли какой-то простой способ расширить этот выход, чтобы получить больше информации, отображаемой в отчете? Например, чтобы добавить дополнительный столбец, содержащий ссылку на скриншот, сделанный тестом.

Я видел, что можно написать собственный тестовый бегун для муравьев junit, такой как EclipseTestRunner, но это немало усилий. Нет ли API для доступа к элементам отчета единицы?

Задача junitreport использует XSLT для создания отчета из XML-файлов, сгенерированных задачей junit .

Вы можете настроить вывод, указав свой собственный XSLT, используя атрибут styledir вложенного элемента report :

   

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

Для небольших изменений проще всего просто импортировать XSLT по умолчанию и переопределить любые шаблоны, необходимые для настройки. Например, чтобы добавить столбец для каждого теста, вам необходимо переопределить шаблон, который создает заголовок таблицы и шаблон, который создает строку таблицы. Ниже я только что скопировал эти шаблоны и немного изменил их, чтобы добавить один столбец (найдите два дополнения, отмеченные ).

         Class  Name Status Type Time(s)  Screenshot         Error Failure TableRowColor                      Failure    Error    Success           screenshot     в         Class  Name Status Type Time(s)  Screenshot         Error Failure TableRowColor                      Failure    Error    Success           screenshot     в         Class  Name Status Type Time(s)  Screenshot         Error Failure TableRowColor                      Failure    Error    Success           screenshot     в         Class  Name Status Type Time(s)  Screenshot         Error Failure TableRowColor                      Failure    Error    Success           screenshot     в         Class  Name Status Type Time(s)  Screenshot         Error Failure TableRowColor                      Failure    Error    Success           screenshot     в         Class  Name Status Type Time(s)  Screenshot         Error Failure TableRowColor                      Failure    Error    Success           screenshot     в         Class  Name Status Type Time(s)  Screenshot         Error Failure TableRowColor                      Failure    Error    Success           screenshot     

Вот как выглядит результат:

Скриншот

Также, если вы не хотите заменять основной файл xsl, вы можете скопировать файл xsl в корневую папку проекта, обновить его своими изменениями и, наконец, отредактировать файл build.xml с добавлением атрибута styledir :

  

Удивительный анк Юккой. Это расширение ответа Юкки о том, как именно вы можете связать скриншот

    screenshot  

Вместо вышеприведенного fragmentа в аннах Jukka, вот как вы можете связать скриншоты:

                   

Все, что вам нужно сделать после создания отчета junit, – скопировать все скриншоты из каталога «selenium / screenshots /» прямо в каталог junit_report.

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

  • Передайте локальный файл в URL в Java
  • Запуск одного теста JUnit в Eclipse
  • JUnit: Как имитировать тестирование System.in?
  • Как откатить транзакцию базы данных при тестировании служб с помощью Spring в JUnit?
  • Запуск тестов junit параллельно в сборке Maven?
  • Как написать тесты junit для интерфейсов?
  • Как издеваться над новой датой () в java с помощью Mockito
  • Настройка TestSuite в jUnit 4
  • java.lang.NoClassDefFoundError: org / hamcrest / SelfDescribing
  • Как утверждать равенство на двух classах без метода equals?
  • Eclipse / Maven: тесты JUnit не скомпилированы при их запуске
  • Давайте будем гением компьютера.