JUnit не генерирует отчеты XML.Для JUnit не существует стандартного формата вывода XML.
Другие инструменты генерируют XML, такие как Ant / Maven.Поэтому первое, что вам нужно сделать, это решить, какую форму XML-файла вы хотите, как и то, что вы хотите сделать с файлами после их создания.
И, собственно, ваше ограничение программноне исключает ANT.Вы можете вызывать муравья программно (см. Вызов муравья из Java, а затем возврат в Java после завершения муравья ).Возможно, это будет самый простой способ создания файлов, совместимых с ant.
Если вы хотите создать свои собственные файлы XML, то вы можете создать класс, который расширяет RunListener , а затемзапустите ваши тесты, вызвав JUnitCore # run () или аналогичный.
public void main(String... args) {
JUnitCore core= new JUnitCore();
core.addListener(new RingingListener());
core.run(MyTestClass.class);
}
Ваш RunListener просто выдаст соответствующий XML.Это довольно легко понять: переопределить методы testRunStarted () и т. Д. И записать XML.Для примера того, как это работает, см. TextListener , который делает то же самое, но для текста.