Создание отчета JUnit программно - PullRequest
0 голосов
/ 05 декабря 2011

Мой текущий подход сейчас основан на моем приложении, просто вызовите сборку ant, и она создаст необходимые отчеты по junit, но я хочу иметь гибкость для программного кодирования отчетов по junit.

Я попробовал этот подход Ant: создание задачи отчета JUnit программно

FileSet fs = new FileSet();
fs.setDir(new File(".."));
fs.createInclude().setName("TEST-*.xml");
XMLResultAggregator aggregator = new XMLResultAggregator();
aggregator.addFileSet(fs);
AggregateTransformer transformer = aggregator.createReport();
transformer.setFormat(Format.FRAMES);
transformer.setTodir(new File("..");

но я даже не могу запустить его. Есть еще идеи?

1 Ответ

1 голос
/ 05 декабря 2011

Код, который вы вставили, эквивалентен вызову задачи junitreport:

<junitreport todir="..">
<fileset dir="..">
<include name="TEST-*.xml" />
</Fileset>
<report format="frames" todir=".." />
</Junitreport>

Вы должны поместить это в метод и запустить его самостоятельно. Этот код возьмет все файлы с именем TEST-*.xml и создаст с ними отчет. не создаст эти файлы. Эти файлы создаются задачей junit в Ant. Так что вам нужно:

  1. Запустите задачу junit программно (см. JUnitTask (Apache Ant API) ), убедившись, что файлы TEST * .xml созданы где-то во временном каталоге.
  2. Запустите приведенный выше код для создания отчета, используя эти временные файлы.

Самый простой способ сделать это, вероятно, то, что вы сделали, иметь где-то build.xml и напрямую вызывать муравья. Если набор файлов, который вы используете, стабилен, то это, вероятно, самый простой способ. Для этого используйте Java-класс ProcessBuilder .

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