You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by gn...@apache.org on 2020/07/24 20:52:45 UTC

[camel] 03/27: [CAMEL-11807] Upgrade camel-solr to junit5

This is an automated email from the ASF dual-hosted git repository.

gnodet pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 1f9a74c94e77f412caaee201bc98e9eeab95e5c9
Author: Guillaume Nodet <gn...@gmail.com>
AuthorDate: Wed Jul 22 23:04:37 2020 +0200

    [CAMEL-11807] Upgrade camel-solr to junit5
---
 components/camel-solr/pom.xml                      |  2 +-
 .../camel/component/solr/InitSolrEndpointTest.java | 19 +++++---
 .../camel/component/solr/SolrAddBeanTest.java      | 10 ++--
 .../camel/component/solr/SolrAddBeansTest.java     | 14 +++---
 .../component/solr/SolrComponentTestSupport.java   | 40 +++++++++-------
 .../camel/component/solr/SolrDeleteTest.java       | 20 ++++----
 .../component/solr/SolrServerMissingTest.java      |  4 +-
 .../camel/component/solr/SolrTestSupport.java      |  6 +--
 .../camel/component/solr/SolrTransactionsTest.java | 54 ++++++++++------------
 .../camel/component/solr/SolrUpdateTest.java       | 18 ++++----
 .../test/junit5/params/ParameterizedExtension.java | 30 +++++++++---
 11 files changed, 118 insertions(+), 99 deletions(-)

diff --git a/components/camel-solr/pom.xml b/components/camel-solr/pom.xml
index 98cf612..44bf914 100644
--- a/components/camel-solr/pom.xml
+++ b/components/camel-solr/pom.xml
@@ -71,7 +71,7 @@
         <!-- test dependencies -->
         <dependency>
             <groupId>org.apache.camel</groupId>
-            <artifactId>camel-test</artifactId>
+            <artifactId>camel-test-junit5</artifactId>
             <scope>test</scope>
         </dependency>
         <dependency>
diff --git a/components/camel-solr/src/test/java/org/apache/camel/component/solr/InitSolrEndpointTest.java b/components/camel-solr/src/test/java/org/apache/camel/component/solr/InitSolrEndpointTest.java
index d7d01dc..d282592 100644
--- a/components/camel-solr/src/test/java/org/apache/camel/component/solr/InitSolrEndpointTest.java
+++ b/components/camel-solr/src/test/java/org/apache/camel/component/solr/InitSolrEndpointTest.java
@@ -17,7 +17,11 @@
 package org.apache.camel.component.solr;
 
 import org.apache.camel.ResolveEndpointFailedException;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertThrows;
 
 public class InitSolrEndpointTest extends SolrTestSupport {
 
@@ -26,8 +30,8 @@ public class InitSolrEndpointTest extends SolrTestSupport {
     @Test
     public void endpointCreatedCorrectlyWithAllOptions() throws Exception {
         SolrEndpoint solrEndpoint = context.getEndpoint(solrUrl + getFullOptions(), SolrEndpoint.class);
-        assertEquals("queue size incorrect", 5, solrEndpoint.getStreamingQueueSize());
-        assertEquals("thread count incorrect", 1, solrEndpoint.getStreamingThreadCount());
+        assertEquals(5, solrEndpoint.getStreamingQueueSize(), "queue size incorrect");
+        assertEquals(1, solrEndpoint.getStreamingThreadCount(), "thread count incorrect");
         assertNotNull(solrEndpoint);
     }
 
@@ -35,13 +39,14 @@ public class InitSolrEndpointTest extends SolrTestSupport {
     public void streamingEndpointCreatedCorrectly() throws Exception {
         SolrEndpoint solrEndpoint = context.getEndpoint(solrUrl, SolrEndpoint.class);
         assertNotNull(solrEndpoint);
-        assertEquals("queue size incorrect", SolrConstants.DEFUALT_STREAMING_QUEUE_SIZE, solrEndpoint.getStreamingQueueSize());
-        assertEquals("thread count incorrect", SolrConstants.DEFAULT_STREAMING_THREAD_COUNT, solrEndpoint.getStreamingThreadCount());
+        assertEquals(SolrConstants.DEFUALT_STREAMING_QUEUE_SIZE, solrEndpoint.getStreamingQueueSize(), "queue size incorrect");
+        assertEquals(SolrConstants.DEFAULT_STREAMING_THREAD_COUNT, solrEndpoint.getStreamingThreadCount(), "thread count incorrect");
     }
 
-    @Test(expected = ResolveEndpointFailedException.class)
+    @Test
     public void wrongURLFormatFailsEndpointCreation() throws Exception {
-        context.getEndpoint("solr://localhost:x99/solr");
+        assertThrows(ResolveEndpointFailedException.class,
+            () -> context.getEndpoint("solr://localhost:x99/solr"));
     }
 
     private String getFullOptions() {
diff --git a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrAddBeanTest.java b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrAddBeanTest.java
index bd4a493..1db45f0 100644
--- a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrAddBeanTest.java
+++ b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrAddBeanTest.java
@@ -16,14 +16,12 @@
  */
 package org.apache.camel.component.solr;
 
+import org.apache.camel.test.junit5.params.Test;
 import org.apache.solr.client.solrj.beans.Field;
-import org.junit.Test;
 
-public class SolrAddBeanTest extends SolrComponentTestSupport {
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
-    public SolrAddBeanTest(SolrFixtures.TestServerType serverToTest) {
-        super(serverToTest);
-    }
+public class SolrAddBeanTest extends SolrComponentTestSupport {
 
     @Test
     public void testAddBean() throws Exception {
@@ -37,7 +35,7 @@ public class SolrAddBeanTest extends SolrComponentTestSupport {
         template.sendBodyAndHeader("direct:start", null, SolrConstants.OPERATION, SolrConstants.OPERATION_COMMIT);
 
         //verify
-        assertEquals("wrong number of entries found", 1, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound());
+        assertEquals(1, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound(), "wrong number of entries found");
     }
 
     public class Item {
diff --git a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrAddBeansTest.java b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrAddBeansTest.java
index 4a6cd1f..8b532da 100644
--- a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrAddBeansTest.java
+++ b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrAddBeansTest.java
@@ -19,14 +19,12 @@ package org.apache.camel.component.solr;
 import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.camel.test.junit5.params.Test;
 import org.apache.solr.client.solrj.beans.Field;
-import org.junit.Test;
 
-public class SolrAddBeansTest extends SolrComponentTestSupport {
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
-    public SolrAddBeansTest(SolrFixtures.TestServerType serverToTest) {
-        super(serverToTest);
-    }
+public class SolrAddBeansTest extends SolrComponentTestSupport {
 
     @Test
     public void testAddBeans() throws Exception {
@@ -49,9 +47,9 @@ public class SolrAddBeansTest extends SolrComponentTestSupport {
         template.sendBodyAndHeader("direct:start", null, SolrConstants.OPERATION, SolrConstants.OPERATION_COMMIT);
 
         //verify
-        assertEquals("wrong number of entries found", 1, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound());
-        assertEquals("wrong number of entries found", 1, executeSolrQuery("id:" + TEST_ID2).getResults().getNumFound());
-        assertEquals("wrong number of entries found", 2, executeSolrQuery("*:*").getResults().getNumFound());
+        assertEquals(1, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound(), "wrong number of entries found");
+        assertEquals(1, executeSolrQuery("id:" + TEST_ID2).getResults().getNumFound(), "wrong number of entries found");
+        assertEquals(2, executeSolrQuery("*:*").getResults().getNumFound(), "wrong number of entries found");
     }
 
     public class Item {
diff --git a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrComponentTestSupport.java b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrComponentTestSupport.java
index 7bde762..cd0bab3 100644
--- a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrComponentTestSupport.java
+++ b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrComponentTestSupport.java
@@ -23,28 +23,27 @@ import java.util.HashMap;
 import java.util.Map;
 
 import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.test.junit5.params.Parameter;
+import org.apache.camel.test.junit5.params.Parameterized;
+import org.apache.camel.test.junit5.params.Parameters;
 import org.apache.solr.client.solrj.SolrClient;
 import org.apache.solr.client.solrj.SolrQuery;
 import org.apache.solr.client.solrj.SolrServerException;
 import org.apache.solr.client.solrj.request.QueryRequest;
 import org.apache.solr.client.solrj.response.QueryResponse;
-import org.junit.AfterClass;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
-import org.junit.runners.Parameterized.Parameters;
-
-@RunWith(Parameterized.class)
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.BeforeEach;
+
+@Parameterized
 public abstract class SolrComponentTestSupport extends SolrTestSupport {
     protected static final String TEST_ID = "test1";
     protected static final String TEST_ID2 = "test2";
 
-    private SolrFixtures solrFixtures;
+    @Parameter
+    SolrFixtures.TestServerType serverToTest;
 
-    public SolrComponentTestSupport(SolrFixtures.TestServerType serverToTest) {
-        this.solrFixtures = new SolrFixtures(serverToTest);
-    }
+    SolrFixtures solrFixtures;
 
     protected void solrInsertTestEntry() {
         solrInsertTestEntry(TEST_ID);
@@ -54,8 +53,15 @@ public abstract class SolrComponentTestSupport extends SolrTestSupport {
         return Arrays.asList(new Object[][] {{true}, {false}});
     }
 
+    SolrFixtures getSolrFixtures() {
+        if (solrFixtures == null) {
+            solrFixtures = new SolrFixtures(serverToTest);
+        }
+        return solrFixtures;
+    }
+
     String solrRouteUri() {
-        return solrFixtures.solrRouteUri();
+        return getSolrFixtures().solrRouteUri();
     }
 
     protected void solrInsertTestEntry(String id) {
@@ -74,16 +80,16 @@ public abstract class SolrComponentTestSupport extends SolrTestSupport {
         solrQuery.setQuery(query);
         QueryRequest queryRequest = new QueryRequest(solrQuery);
         queryRequest.setBasicAuthCredentials("solr", "SolrRocks");
-        SolrClient solrServer = solrFixtures.getServer();
+        SolrClient solrServer = getSolrFixtures().getServer();
         return queryRequest.process(solrServer, "collection1");
     }
 
-    @BeforeClass
+    @BeforeAll
     public static void beforeClass() throws Exception {
         SolrFixtures.createSolrFixtures();
     }
 
-    @AfterClass
+    @AfterAll
     public static void afterClass() throws Exception {
         SolrFixtures.teardownSolrFixtures();
     }
@@ -112,7 +118,7 @@ public abstract class SolrComponentTestSupport extends SolrTestSupport {
         return Arrays.asList(serverTypes);
     }
 
-    @Before
+    @BeforeEach
     public void clearIndex() throws Exception {
         SolrFixtures.clearIndex();
     }
diff --git a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrDeleteTest.java b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrDeleteTest.java
index 74afa11..22d1f3a 100644
--- a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrDeleteTest.java
+++ b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrDeleteTest.java
@@ -18,13 +18,11 @@ package org.apache.camel.component.solr;
 
 import java.util.Arrays;
 
-import org.junit.Test;
+import org.apache.camel.test.junit5.params.Test;
 
-public class SolrDeleteTest extends SolrComponentTestSupport {
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
-    public SolrDeleteTest(SolrFixtures.TestServerType serverToTest) {
-        super(serverToTest);
-    }
+public class SolrDeleteTest extends SolrComponentTestSupport {
 
     @Test
     public void testDeleteById() throws Exception {
@@ -32,14 +30,14 @@ public class SolrDeleteTest extends SolrComponentTestSupport {
         //insert, commit and verify
         solrInsertTestEntry();
         solrCommit();
-        assertEquals("wrong number of entries found", 1, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound());
+        assertEquals(1, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound(), "wrong number of entries found");
 
         //delete
         template.sendBodyAndHeader("direct:start", TEST_ID, SolrConstants.OPERATION, SolrConstants.OPERATION_DELETE_BY_ID);
         solrCommit();
 
         //verify
-        assertEquals("wrong number of entries found", 0, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound());
+        assertEquals(0, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound(), "wrong number of entries found");
     }
 
     @Test
@@ -49,13 +47,13 @@ public class SolrDeleteTest extends SolrComponentTestSupport {
         solrInsertTestEntry(TEST_ID);
         solrInsertTestEntry(TEST_ID2);
         solrCommit();
-        assertEquals("wrong number of entries found", 2, executeSolrQuery("id:test*").getResults().getNumFound());
+        assertEquals(2, executeSolrQuery("id:test*").getResults().getNumFound(), "wrong number of entries found");
 
         //delete
         template.sendBodyAndHeader("direct:splitThenCommit", Arrays.asList(TEST_ID, TEST_ID2), SolrConstants.OPERATION, SolrConstants.OPERATION_DELETE_BY_ID);
 
         //verify
-        assertEquals("wrong number of entries found", 0, executeSolrQuery("id:test*").getResults().getNumFound());
+        assertEquals(0, executeSolrQuery("id:test*").getResults().getNumFound(), "wrong number of entries found");
     }
 
     @Test
@@ -65,13 +63,13 @@ public class SolrDeleteTest extends SolrComponentTestSupport {
         solrInsertTestEntry(TEST_ID);
         solrInsertTestEntry(TEST_ID2);
         solrCommit();
-        assertEquals("wrong number of entries found", 2, executeSolrQuery("id:test*").getResults().getNumFound());
+        assertEquals(2, executeSolrQuery("id:test*").getResults().getNumFound(), "wrong number of entries found");
 
         //delete
         template.sendBodyAndHeader("direct:start", "id:test*", SolrConstants.OPERATION, SolrConstants.OPERATION_DELETE_BY_QUERY);
         solrCommit();
 
         //verify
-        assertEquals("wrong number of entries found", 0, executeSolrQuery("id:test*").getResults().getNumFound());
+        assertEquals(0, executeSolrQuery("id:test*").getResults().getNumFound(), "wrong number of entries found");
     }
 }
diff --git a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrServerMissingTest.java b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrServerMissingTest.java
index 84514f0..95c593d 100644
--- a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrServerMissingTest.java
+++ b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrServerMissingTest.java
@@ -18,7 +18,9 @@ package org.apache.camel.component.solr;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.builder.RouteBuilder;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 public class SolrServerMissingTest extends SolrTestSupport {
 
diff --git a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrTestSupport.java b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrTestSupport.java
index a11e271..60f310b 100644
--- a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrTestSupport.java
+++ b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrTestSupport.java
@@ -17,15 +17,15 @@
 package org.apache.camel.component.solr;
 
 import org.apache.camel.test.AvailablePortFinder;
-import org.apache.camel.test.junit4.CamelTestSupport;
-import org.junit.BeforeClass;
+import org.apache.camel.test.junit5.CamelTestSupport;
+import org.junit.jupiter.api.BeforeAll;
 
 public abstract class SolrTestSupport extends CamelTestSupport {
 
     private static int port;
     private static int httpsPort;
 
-    @BeforeClass
+    @BeforeAll
     public static void initPort() throws Exception {
         port = AvailablePortFinder.getNextAvailable();
         httpsPort = AvailablePortFinder.getNextAvailable();
diff --git a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrTransactionsTest.java b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrTransactionsTest.java
index de3e5b4..4a0997f 100644
--- a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrTransactionsTest.java
+++ b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrTransactionsTest.java
@@ -17,40 +17,28 @@
 package org.apache.camel.component.solr;
 
 import org.apache.camel.CamelExecutionException;
+import org.apache.camel.test.junit5.params.Test;
 import org.apache.solr.client.solrj.impl.HttpSolrClient;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.ExpectedException;
 
-import static org.hamcrest.CoreMatchers.allOf;
-import static org.hamcrest.CoreMatchers.containsString;
-import static org.hamcrest.CoreMatchers.isA;
-import static org.junit.internal.matchers.ThrowableMessageMatcher.hasMessage;
+import static org.apache.camel.test.junit5.TestSupport.assertIsInstanceOf;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 public class SolrTransactionsTest extends SolrComponentTestSupport {
 
-    @Rule
-    public ExpectedException thrown = ExpectedException.none();
-
-    private SolrFixtures.TestServerType solrServerType;
-
-    public SolrTransactionsTest(SolrFixtures.TestServerType solrServerType) {
-        super(solrServerType);
-        this.solrServerType = solrServerType;
-    }
-
     @Test
     public void testCommit() throws Exception {
 
         //insert and verify
         solrInsertTestEntry();
-        assertEquals("wrong number of entries found", 0, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound());
+        assertEquals(0, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound(), "wrong number of entries found");
 
         //commit
         template.sendBodyAndHeader("direct:start", null, SolrConstants.OPERATION, SolrConstants.OPERATION_COMMIT);
 
         //verify exists after commit
-        assertEquals("wrong number of entries found", 1, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound());
+        assertEquals(1, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound(), "wrong number of entries found");
     }
 
     @Test
@@ -58,41 +46,47 @@ public class SolrTransactionsTest extends SolrComponentTestSupport {
 
         //insert and verify
         solrInsertTestEntry();
-        assertEquals("wrong number of entries found", 0, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound());
+        assertEquals(0, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound(), "wrong number of entries found");
 
         //commit
         template.sendBodyAndHeader("direct:start", null, SolrConstants.OPERATION, SolrConstants.OPERATION_SOFT_COMMIT);
 
         //verify exists after commit
-        assertEquals("wrong number of entries found", 1, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound());
+        assertEquals(1, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound(), "wrong number of entries found");
     }
 
     @Test
     public void testRollback() throws Exception {
 
-        if (SolrFixtures.TestServerType.USE_CLOUD == this.solrServerType) {
+        if (SolrFixtures.TestServerType.USE_CLOUD == getSolrFixtures().serverType) {
             // Twisting expectations in this case as rollback is currently no
             // more supported in SolrCloud mode. See SOLR-4895
-            thrown.expect(CamelExecutionException.class);
-            final String expectedMessagePart = "Rollback is currently not supported in SolrCloud mode. (SOLR-4895)";
-            thrown.expectCause(allOf(isA(HttpSolrClient.RemoteSolrException.class), hasMessage(containsString(expectedMessagePart))));
+            Exception e = assertThrows(CamelExecutionException.class,
+                () -> doRollback());
+            assertIsInstanceOf(HttpSolrClient.RemoteSolrException.class, e.getCause());
+            assertTrue(e.getCause().getMessage().contains("Rollback is currently not supported in SolrCloud mode. (SOLR-4895)"));
+        } else {
+            doRollback();
         }
 
+    }
+
+    protected void doRollback() throws Exception {
         //insert and verify
         solrInsertTestEntry();
-        assertEquals("wrong number of entries found", 0, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound());
+        assertEquals(0, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound(), "wrong number of entries found");
 
         //rollback
         template.sendBodyAndHeader("direct:start", null, SolrConstants.OPERATION, SolrConstants.OPERATION_ROLLBACK);
 
         //verify after rollback
-        assertEquals("wrong number of entries found", 0, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound());
+        assertEquals(0, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound(), "wrong number of entries found");
 
         //commit
         template.sendBodyAndHeader("direct:start", null, SolrConstants.OPERATION, SolrConstants.OPERATION_COMMIT);
 
         //verify after commit (again)
-        assertEquals("wrong number of entries found", 0, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound());
+        assertEquals(0, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound(), "wrong number of entries found");
     }
 
     @Test
@@ -100,13 +94,13 @@ public class SolrTransactionsTest extends SolrComponentTestSupport {
 
         //insert and verify
         solrInsertTestEntry();
-        assertEquals("wrong number of entries found", 0, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound());
+        assertEquals(0, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound(), "wrong number of entries found");
 
         //optimize
         template.sendBodyAndHeader("direct:start", null, SolrConstants.OPERATION, SolrConstants.OPERATION_OPTIMIZE);
 
         //verify exists after optimize
-        assertEquals("wrong number of entries found", 1, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound());
+        assertEquals(1, executeSolrQuery("id:" + TEST_ID).getResults().getNumFound(), "wrong number of entries found");
     }
 
 }
diff --git a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrUpdateTest.java b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrUpdateTest.java
index a5185e9..954d50d 100644
--- a/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrUpdateTest.java
+++ b/components/camel-solr/src/test/java/org/apache/camel/component/solr/SolrUpdateTest.java
@@ -22,25 +22,25 @@ import java.util.Arrays;
 import java.util.List;
 
 import org.apache.camel.Exchange;
+import org.apache.camel.test.junit5.params.Test;
 import org.apache.solr.client.solrj.impl.HttpSolrClient;
 import org.apache.solr.client.solrj.response.QueryResponse;
 import org.apache.solr.client.solrj.util.ClientUtils;
 import org.apache.solr.common.SolrDocument;
 import org.apache.solr.common.SolrInputDocument;
 import org.apache.solr.common.params.UpdateParams;
-import org.junit.Before;
-import org.junit.Ignore;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Disabled;
+
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
 
 public class SolrUpdateTest extends SolrComponentTestSupport {
     private SolrEndpoint solrEndpoint;
 
-    public SolrUpdateTest(SolrFixtures.TestServerType serverToTest) {
-        super(serverToTest);
-    }
-
     @Override
-    @Before
+    @BeforeEach
     public void setUp() throws Exception {
         super.setUp();
         solrEndpoint = getMandatoryEndpoint(solrRouteUri(), SolrEndpoint.class);
@@ -304,7 +304,7 @@ public class SolrUpdateTest extends SolrComponentTestSupport {
     }
 
     @Test
-    @Ignore("No real advantage has yet been discovered to specifying the file in a header.")
+    @Disabled("No real advantage has yet been discovered to specifying the file in a header.")
     public void indexPDFDocumentSpecifyingFileInParameters() throws Exception {
         solrEndpoint.setRequestHandler("/update/extract");
 
diff --git a/components/camel-test-junit5/src/main/java/org/apache/camel/test/junit5/params/ParameterizedExtension.java b/components/camel-test-junit5/src/main/java/org/apache/camel/test/junit5/params/ParameterizedExtension.java
index 62246be..e73cf82 100644
--- a/components/camel-test-junit5/src/main/java/org/apache/camel/test/junit5/params/ParameterizedExtension.java
+++ b/components/camel-test-junit5/src/main/java/org/apache/camel/test/junit5/params/ParameterizedExtension.java
@@ -21,7 +21,9 @@ import java.lang.reflect.Method;
 import java.lang.reflect.Modifier;
 import java.util.Arrays;
 import java.util.Comparator;
+import java.util.List;
 import java.util.stream.Collectors;
+import java.util.stream.Stream;
 
 import org.junit.jupiter.api.extension.Extension;
 import org.junit.jupiter.api.extension.ExtensionContext;
@@ -50,10 +52,7 @@ public class ParameterizedExtension implements TestTemplateInvocationContextProv
     public java.util.stream.Stream<TestTemplateInvocationContext> provideTestTemplateInvocationContexts(ExtensionContext extensionContext) {
         Class<?> testClass = extensionContext.getRequiredTestClass();
         try {
-            java.util.List<Method> parameters = java.util.stream.Stream.of(testClass.getDeclaredMethods())
-                    .filter(m -> Modifier.isStatic(m.getModifiers()))
-                    .filter(m -> m.getAnnotation(Parameters.class) != null)
-                    .collect(Collectors.toList());
+            List<Method> parameters = getParametersMethods(testClass);
             if (parameters.size() != 1) {
                 throw new IllegalStateException("Class " + testClass.getName() + " should provide a single method annotated with @" + Parameters.class.getSimpleName());
             }
@@ -63,7 +62,19 @@ public class ParameterizedExtension implements TestTemplateInvocationContextProv
                     .map(Arguments::get)
                     .map(ParameterizedTemplate::new);
         } catch (Exception e) {
-            throw new IllegalStateException("Unable to generate test templates for class " + testClass.getName());
+            throw new IllegalStateException("Unable to generate test templates for class " + testClass.getName(), e);
+        }
+    }
+
+    private List<Method> getParametersMethods(Class<?> testClass) {
+        List<Method> parameters = java.util.stream.Stream.of(testClass.getDeclaredMethods())
+                .filter(m -> Modifier.isStatic(m.getModifiers()))
+                .filter(m -> m.getAnnotation(Parameters.class) != null)
+                .collect(Collectors.toList());
+        if (parameters.isEmpty() && testClass != null) {
+            return getParametersMethods(testClass.getSuperclass());
+        } else {
+            return parameters;
         }
     }
 
@@ -108,7 +119,9 @@ public class ParameterizedExtension implements TestTemplateInvocationContextProv
 
         protected void postProcessTestInstance(Object testInstance, ExtensionContext context) throws Exception {
             Class<?> clazz = testInstance.getClass();
-            java.util.List<Field> fields = java.util.stream.Stream.of(clazz.getDeclaredFields())
+            java.util.List<Field> fields = hierarchy(clazz)
+                    .map(Class::getDeclaredFields)
+                    .flatMap(Stream::of)
                     .filter(f -> isAnnotated(f, Parameter.class))
                     .sorted(Comparator.comparing(f -> (Integer) f.getAnnotation(Parameter.class).value()))
                     .collect(Collectors.toList());
@@ -122,6 +135,11 @@ public class ParameterizedExtension implements TestTemplateInvocationContextProv
             }
         }
 
+        protected Stream<Class<?>> hierarchy(Class<?> clazz) {
+            Class<?> superclass = clazz.getSuperclass();
+            return Stream.concat(Stream.of(clazz), superclass != null ? hierarchy(superclass) : Stream.empty());
+        }
+
     }
 
 }