title: Aggregate data from several allure reports
body: <p>Allure report tool was designed to show one report per test run. Developers warned me about it. Anyway i need more from this convenient tool.</p>
  <ul>
  <li>Did you think to keep allure reports for several days/month?</li>
  <li>Did you think to analyze history data automatically?</li>
  </ul>
  <p>Basically, I need to find answer on question: What tests are flaky for previous month and need to be stabilized? Unfortunately, I didn't find answer from the box on the main web site(<a href="http://allure.qatools.ru/" rel="nofollow noreferrer">http://allure.qatools.ru/</a>) or in the internet.</p>
  <p>My solutions:</p>
  <p><strong>Trying to solve first question: [Solved]</strong></p>
  <p>I tried to keep allure reports archived under jenkins CI tool, but i have to manage 1500 TestNg tests and allure report generation and archiving takes about 10min, which is unacceptable for our pipeline.
  Then i started to generate report on jenkins slave and ftp it to remote box according next structure: project_type/pipeline_type/suite_type/day/build_number.</p>
  <p>I store reports as raw projects with btrfs compression, which allows to compress json files very effectively(files are compressed in 5 times) and files are accessible from ui.</p>
  <p>UI is a django(simply love it) project, which follows files system structure.</p>
  <p>This approach allows to aggregate data.</p>
  <p><strong>Trying to solve second question: [Not solved]</strong></p>
  <p>I need to aggregate data across all runs for suite_type(see structure above) and find out which tests are failed on main run or re-run attempts(we re-run our failed tests 3 times using FailedReporter TestNg listener) and match failed reasons with failed tests. Ideally i need to match failed tests results with stored reports.</p>
  <p><strong>For example:</strong></p>
  <p>We have 2 reports:</p>
  <blockquote>
  <p>../parallel-suite/2015-10-21/560</p>
  <p>../parallel-suite/2015-10-22/584</p>
  </blockquote>
  <p>Each suite has failed test testCreditCard.</p>
  <ul>
  <li>Test failed in 560 build with reason - third party system was down.</li>
  <li>Test failed in 584 build on first re-run attempt with reason - third party system was down, on second re-run attempt with reason - IndexOutOfBoundsException: Index: 0, Size: 0 at java.util.ArrayList.rangeCheck, on thrid attempt it passed.</li>
  </ul>
  <p>As a result i need to know that <code>third party system was down</code> error was 2 times for 2 days and <code>IndexOutOfBoundsException</code> was 1 time for 2 days and test passed on second day on third re-run attempt.</p>
  <p>Does someone work in this direction?</p>