imagej / imagej/imagej-ops

Use the H2 database in junit-benchmarks to catch performance regressions

Open
#6 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
94
Forks
44
PR merge metrics
No merged PRs in 30d

Description

It is possible to use the embedded H2 database to store previous runtimes and so make beautiful history charts as well as measurements that make tests fail when the runtime is substantially worse than before.

This needs to be modeled after the [unit tests of junit-benchmarks](https://github.com/scijava/junit-benchmarks/blob/master/src/test/java/com/carrotsearch/junitbenchmarks/h2/TestH2HistoryChart.java) because the [documentation is insufficient](http://labs.carrotsearch.com/junit-benchmarks.html).

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading junit-benchmarks' TestH2HistoryChart.java, which the issue identifies as the model, then inspect the imagej-ops benchmark tests for the integration point. Done means previous runtimes are stored in H2, history charts and measurements are available, and substantially slower runtimes cause tests to fail.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
databases, performance, testing
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.