# Merge multiple gradle reports without Gradle

**URL:** <https://discuss.gradle.org/t/merge-multiple-gradle-reports-without-gradle/32035>\
**Category:** Help/Discuss\
**Created:** [June 9, 2019, 1:43pm UTC](https://discuss.gradle.org/t/merge-multiple-gradle-reports-without-gradle/32035 "2019-06-09T13:43:10Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![IrfanSyed-PSC](https://avatars.discourse-cdn.com/v4/letter/i/e47c2d/32.png) [@IrfanSyed-PSC](https://discuss.gradle.org/u/IrfanSyed-PSC)\
**Post date:** [June 9, 2019, 1:43pm UTC](https://discuss.gradle.org/t/merge-multiple-gradle-reports-without-gradle/32035/1 "2019-06-09T13:43:10Z")

</div>

Hi,

I have multiple gradle JUnit tests reports generated from the tests run on multiple machines. Now I would like to consolidate them without even running the gradle task as the agent who orchestrates the tasks running on multiple machines will only have the reports and cannot use gradle on the agent.

What would be the better tool in such a situation ? Thank you !

---

<div class="post-metadata">

**Author:** ![lingocoder](https://sea1.discourse-cdn.com/gradle/user_avatar/discuss.gradle.org/lingocoder/32/7650_2.png) [@lingocoder](https://discuss.gradle.org/u/lingocoder)\
**Post date:** [June 9, 2019, 7:09pm UTC](https://discuss.gradle.org/t/merge-multiple-gradle-reports-without-gradle/32035/2 "2019-06-09T19:09:00Z")

</div>

Your question takes me back to my Ant days 🙂

What you describe sounds exactly like what Ant’s [_JUnitReport Task_](http://bit.ly/JUnitRpt) is designed for:

> [@](#):
>
> # _ **JUnitReport** _
> 
> ## _ **Description** _
> 
> _Merge the individual XML files generated by the JUnit task and eventually apply a stylesheet on the resulting merged document to provide a browsable report of the testcases results…_  
> …

Come to think of it, I believe Gradle itself uses Ant to pretty-print its own test reports, if I’m not mistaken.

If your agent can use Ant, I think it would be perfect for what you want to do. You probably already know that you’ll find the raw XML files in your project’s _`build/test-results/test/`_ folder.

Oh. And thanks for the memories 😉

---

<div class="post-metadata">

**Author:** ![IrfanSyed-PSC](https://avatars.discourse-cdn.com/v4/letter/i/e47c2d/32.png) [@IrfanSyed-PSC](https://discuss.gradle.org/u/IrfanSyed-PSC)\
**Post date:** [June 11, 2019, 4:21pm UTC](https://discuss.gradle.org/t/merge-multiple-gradle-reports-without-gradle/32035/3 "2019-06-11T16:21:57Z")

</div>

Thank you ! I will try writing an ANT task as you suggested.

---

<div class="post-metadata">

**Author:** ![lingocoder](https://sea1.discourse-cdn.com/gradle/user_avatar/discuss.gradle.org/lingocoder/32/7650_2.png) [@lingocoder](https://discuss.gradle.org/u/lingocoder)\
**Post date:** [June 11, 2019, 4:51pm UTC](https://discuss.gradle.org/t/merge-multiple-gradle-reports-without-gradle/32035/4 "2019-06-11T16:51:55Z")

</div>

You’re welcome 🙂

If you follow the manual I linked to, it should be pretty straightforward.

Incidentally, I was just wondering. Can you appreciate the irony of someone who works for a company known for [_its excellent XML/XSLT processing software_](http://bit.ly/XsltStylee) needing to go outside the biz for an XML/XSLT processing solution? 😉

---

<div class="post-metadata">

**Author:** ![IrfanSyed-PSC](https://avatars.discourse-cdn.com/v4/letter/i/e47c2d/32.png) [@IrfanSyed-PSC](https://discuss.gradle.org/u/IrfanSyed-PSC)\
**Post date:** [August 25, 2019, 3:14am UTC](https://discuss.gradle.org/t/merge-multiple-gradle-reports-without-gradle/32035/5 "2019-08-25T03:14:27Z")

</div>

That is because some problems need generic solutions 🙂

I am running Gradle, the reports I have for subprojects are in HTML and I want to maintain it that way. I need a consolidated report which combines all those HTML reports into one.
