View Source

h1. What is report aggregation
Report aggregation is designed to provide quick insight of build metrics of descendant configurations from the parent configuration. For example you may define a JUnit aggregation in root configuration to display the overall test number, success rate and test duration for all configurations in the system. The statistics page of root configuration will also include aggregation statistics to display aggregated metrics over time. Metrics will be aggregated when build runs, so you will not see aggregated metrics immediately after aggregation definition.

h1. Define aggregations
Aggregations can be defined in configuration setting page like below:

The report set field tells QuickBuild which report sets to aggregate. If left empty, QuickBuild will aggregate all available report sets.

Aggregations defined in high level configurations will be inherited by low level configurations. This makes aggregation at different levels much easier. Taking below hierarchy for example:

We can define three JUnit aggregations at root configuration to aggregate JUnit metrics from DEV, QA and RELEASE configurations respectively. After building of all configurations, overview page of the root configuration will display three aggregation result shown as below:


The _Release JUnit Summary_ table displays JUnit summaries from all release configurations in the system, and the same applies for _QA JUnit Summary_ and _Dev JUnit Summary_.

If switch to overview page of _Project A_, it also has three JUnit summaries. However instead of summarizing the RELEASE/QA/DEV configurations of the whole system, these summaries are aggregated from RELEASE/QA/DEV configurations under the _Project A_ configuration. The reason is that _Project A_ inherits aggregations from root configuration. Taking Release aggregation for instance, it declares to aggregate metrics from all child release configurations. In root configuration, this means to aggregate from all release configurations in the system, but in _Project A_, this means to aggregate from all release configurations under _Project A_.

Additionally, statistics page of relevant configurations will display the aggregated metrics over time, grouped by day, week, or month.

h3. Add aggregation gadget
You may also add the aggregation gadgets to the user dashboard to know the aggregated build metrics at first glance.