You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by al...@apache.org on 2022/08/17 13:14:19 UTC
[camel-quarkus] branch main updated: perf-regression: add unit test #4001
This is an automated email from the ASF dual-hosted git repository.
aldettinger pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git
The following commit(s) were added to refs/heads/main by this push:
new d70da15319 perf-regression: add unit test #4001
d70da15319 is described below
commit d70da15319ef65e9357fbd6c10367fae3e3081ad
Author: aldettinger <al...@gmail.com>
AuthorDate: Wed Aug 17 10:52:04 2022 +0200
perf-regression: add unit test #4001
---
.../PerformanceRegressionReportTest.java | 36 ++++++++++++++++------
.../test/resources/expecteds/jvm-and-native.txt | 8 +++++
.../src/test/resources/expecteds/jvm-only.txt | 6 ++++
.../perf-regression-expecteds/nominal.txt | 6 ----
4 files changed, 40 insertions(+), 16 deletions(-)
diff --git a/tooling/perf-regression/src/test/java/org/apache/camel/quarkus/performance/regression/PerformanceRegressionReportTest.java b/tooling/perf-regression/src/test/java/org/apache/camel/quarkus/performance/regression/PerformanceRegressionReportTest.java
index 6424ea1454..14c7b500ae 100644
--- a/tooling/perf-regression/src/test/java/org/apache/camel/quarkus/performance/regression/PerformanceRegressionReportTest.java
+++ b/tooling/perf-regression/src/test/java/org/apache/camel/quarkus/performance/regression/PerformanceRegressionReportTest.java
@@ -27,18 +27,34 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
public class PerformanceRegressionReportTest {
@Test
- public void printAllShouldSucceed() throws IOException {
+ public void printAllJvmAndNativeShouldSucceed() throws IOException {
PerformanceRegressionReport sut = new PerformanceRegressionReport("10m");
- sut.setCategoryMeasureForVersion("2.10.0", "JVM", 360.0);
- sut.setCategoryMeasureForVersion("2.8.0", "JVM", 380.0);
- sut.setCategoryMeasureForVersion("2.9.0", "JVM", 390.0);
-
- sut.setCategoryMeasureForVersion("2.10.0", "Native", 1000.0);
- sut.setCategoryMeasureForVersion("2.8.0", "Native", 1080.0);
- sut.setCategoryMeasureForVersion("2.9.0", "Native", 1090.0);
-
- String expected = IOUtils.resourceToString("/perf-regression-expecteds/nominal.txt", StandardCharsets.UTF_8);
+ sut.setCategoryMeasureForVersion("2.10.0", "JVM", 333.45);
+ sut.setCategoryMeasureForVersion("2.6.0", "JVM", 380.0);
+ sut.setCategoryMeasureForVersion("2.8.75", "JVM", 370.5);
+ sut.setCategoryMeasureForVersion("2.7.0", "JVM", 390.0);
+ sut.setCategoryMeasureForVersion("2.9.0", "JVM", 370.5);
+
+ sut.setCategoryMeasureForVersion("2.10.0", "Native", 225.0);
+ sut.setCategoryMeasureForVersion("2.6.0", "Native", 1080.0);
+ sut.setCategoryMeasureForVersion("2.8.75", "Native", 1134.0);
+ sut.setCategoryMeasureForVersion("2.7.0", "Native", 1134.0);
+ sut.setCategoryMeasureForVersion("2.9.0", "Native", 250.0);
+
+ String expected = IOUtils.resourceToString("/expecteds/jvm-and-native.txt", StandardCharsets.UTF_8);
+ expected = expected.replaceAll("\\n", System.lineSeparator());
assertEquals(expected, sut.printAll());
}
+ @Test
+ public void printAllJvmShouldSucceed() throws IOException {
+ PerformanceRegressionReport sut = new PerformanceRegressionReport("1h");
+ sut.setCategoryMeasureForVersion("2.10.0", "JVM", 900.00);
+ sut.setCategoryMeasureForVersion("2.6.0", "JVM", 300.0);
+ sut.setCategoryMeasureForVersion("3.61.15", "JVM", 300.0);
+
+ String expected = IOUtils.resourceToString("/expecteds/jvm-only.txt", StandardCharsets.UTF_8);
+ expected = expected.replaceAll("\\n", System.lineSeparator());
+ assertEquals(expected, sut.printAll());
+ }
}
diff --git a/tooling/perf-regression/src/test/resources/expecteds/jvm-and-native.txt b/tooling/perf-regression/src/test/resources/expecteds/jvm-and-native.txt
new file mode 100644
index 0000000000..b815757fcf
--- /dev/null
+++ b/tooling/perf-regression/src/test/resources/expecteds/jvm-and-native.txt
@@ -0,0 +1,8 @@
+ Camel Quarkus Throughput Performance Increase Compared to Previous Version
+ Camel Quarkus version | Duration | JVM req/s [%increase] | Native req/s [%increase] | Status |
+-----------------------------------------------------------------------------------------------------------------------------------
+ 2.6.0 | 10m | 380.00 req/s [+0.00%] | 1080.00 req/s [+0.00%] | OK |
+ 2.7.0 | 10m | 390.00 req/s [+2.63%] | 1134.00 req/s [+5.00%] | OK |
+ 2.8.75 | 10m | 370.50 req/s [-5.00%] | 1134.00 req/s [+0.00%] | Potential performance regression |
+ 2.9.0 | 10m | 370.50 req/s [+0.00%] | 250.00 req/s [-77.95%] | Potential performance regression |
+ 2.10.0 | 10m | 333.45 req/s [-10.00%] | 225.00 req/s [-10.00%] | Potential performance regression |
\ No newline at end of file
diff --git a/tooling/perf-regression/src/test/resources/expecteds/jvm-only.txt b/tooling/perf-regression/src/test/resources/expecteds/jvm-only.txt
new file mode 100644
index 0000000000..b62fddcde1
--- /dev/null
+++ b/tooling/perf-regression/src/test/resources/expecteds/jvm-only.txt
@@ -0,0 +1,6 @@
+ Camel Quarkus Throughput Performance Increase Compared to Previous Version
+ Camel Quarkus version | Duration | JVM req/s [%increase] | Status |
+-------------------------------------------------------------------------------------------------------
+ 2.6.0 | 1h | 300.00 req/s [+0.00%] | OK |
+ 2.10.0 | 1h | 900.00 req/s [+200.00%] | OK |
+ 3.61.15 | 1h | 300.00 req/s [-66.67%] | Potential performance regression |
\ No newline at end of file
diff --git a/tooling/perf-regression/src/test/resources/perf-regression-expecteds/nominal.txt b/tooling/perf-regression/src/test/resources/perf-regression-expecteds/nominal.txt
deleted file mode 100644
index ff49459f93..0000000000
--- a/tooling/perf-regression/src/test/resources/perf-regression-expecteds/nominal.txt
+++ /dev/null
@@ -1,6 +0,0 @@
- Camel Quarkus Throughput Performance Increase Compared to Previous Version
- Camel Quarkus version | Duration | JVM req/s [%increase] | Native req/s [%increase] | Status |
-----------------------------------------------------------------------------------------------------------------------------------
- 2.8.0 | 10m | 380.00 req/s [+0.00%] | 1080.00 req/s [+0.00%] | OK |
- 2.9.0 | 10m | 390.00 req/s [+2.63%] | 1090.00 req/s [+0.93%] | OK |
- 2.10.0 | 10m | 360.00 req/s [-7.69%] | 1000.00 req/s [-8.26%] | Potential performance regression |
\ No newline at end of file