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

zhangduo pushed a commit to branch branch-2
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/branch-2 by this push:
     new 4e0eb7be787 HBASE-29911 Upgrade hbase-examples to use junit5 (#7779)
4e0eb7be787 is described below

commit 4e0eb7be7876ff368113206690a5290ed48664b4
Author: Liu Xiao <[email protected]>
AuthorDate: Tue Feb 24 16:09:48 2026 +0800

    HBASE-29911 Upgrade hbase-examples to use junit5 (#7779)
    
    Signed-off-by: Duo Zhang <[email protected]>
---
 hbase-examples/pom.xml                             |  5 --
 .../row/stats/recorder/RowStatisticsRecorder.java  |  1 +
 .../client/example/TestAsyncClientExample.java     | 23 ++++------
 .../hbase/client/example/TestHttpProxyExample.java | 23 ++++------
 .../example/TestMultiThreadedClientExample.java    | 25 ++++------
 .../client/example/TestRefreshHFilesClient.java    | 18 +++-----
 .../coprocessor/example/TestRefreshHFilesBase.java |  4 +-
 .../example/TestRefreshHFilesEndpoint.java         | 20 ++++----
 .../example/TestScanModifyingObserver.java         | 31 ++++++-------
 .../example/TestValueReplacingCompaction.java      | 31 ++++++-------
 .../example/TestWriteHeavyIncrementObserver.java   | 30 ++++++------
 ...avyIncrementObserverWithMemStoreCompaction.java | 28 +++++++-----
 .../example/TestZooKeeperScanPolicyObserver.java   | 25 ++++------
 .../WriteHeavyIncrementObserverTestBase.java       | 13 +-----
 .../row/stats/TestRowStatisticsEventHandler.java   |  3 ++
 .../row/stats/TestRowStatisticsTableRecorder.java  | 26 +++++------
 .../stats/sizebucket/TestSizeBucketTracker.java    | 21 +++++----
 .../hbase/mapreduce/TestMapReduceExamples.java     | 18 +++-----
 .../TestShadeSaslAuthenticationProvider.java       | 53 ++++++++++------------
 .../org/apache/hadoop/hbase/types/TestPBCell.java  | 16 +++----
 20 files changed, 180 insertions(+), 234 deletions(-)

diff --git a/hbase-examples/pom.xml b/hbase-examples/pom.xml
index dab67c05e4e..d3b2075ba4f 100644
--- a/hbase-examples/pom.xml
+++ b/hbase-examples/pom.xml
@@ -156,11 +156,6 @@
       <artifactId>junit-jupiter-params</artifactId>
       <scope>test</scope>
     </dependency>
-    <dependency>
-      <groupId>org.junit.vintage</groupId>
-      <artifactId>junit-vintage-engine</artifactId>
-      <scope>test</scope>
-    </dependency>
     <dependency>
       <groupId>org.mockito</groupId>
       <artifactId>mockito-core</artifactId>
diff --git 
a/hbase-examples/src/main/java/org/apache/hadoop/hbase/coprocessor/example/row/stats/recorder/RowStatisticsRecorder.java
 
b/hbase-examples/src/main/java/org/apache/hadoop/hbase/coprocessor/example/row/stats/recorder/RowStatisticsRecorder.java
index 78f5eb37647..7fa62966379 100644
--- 
a/hbase-examples/src/main/java/org/apache/hadoop/hbase/coprocessor/example/row/stats/recorder/RowStatisticsRecorder.java
+++ 
b/hbase-examples/src/main/java/org/apache/hadoop/hbase/coprocessor/example/row/stats/recorder/RowStatisticsRecorder.java
@@ -23,5 +23,6 @@ import org.apache.yetus.audience.InterfaceAudience;
 
 @InterfaceAudience.Private
 public interface RowStatisticsRecorder {
+
   void record(RowStatisticsImpl stats, Optional<byte[]> fullRegionName);
 }
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/client/example/TestAsyncClientExample.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/client/example/TestAsyncClientExample.java
index 5ce943e01b1..b904ecf0a99 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/client/example/TestAsyncClientExample.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/client/example/TestAsyncClientExample.java
@@ -17,39 +17,34 @@
  */
 package org.apache.hadoop.hbase.client.example;
 
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
-import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.HBaseTestingUtility;
 import org.apache.hadoop.hbase.TableName;
 import org.apache.hadoop.hbase.testclassification.ClientTests;
 import org.apache.hadoop.hbase.testclassification.MediumTests;
 import org.apache.hadoop.hbase.util.Bytes;
 import org.apache.hadoop.util.ToolRunner;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
 
-@Category({ ClientTests.class, MediumTests.class })
+@Tag(ClientTests.TAG)
+@Tag(MediumTests.TAG)
 public class TestAsyncClientExample {
 
-  @ClassRule
-  public static final HBaseClassTestRule CLASS_RULE =
-    HBaseClassTestRule.forClass(TestAsyncClientExample.class);
-
   private static final HBaseTestingUtility UTIL = new HBaseTestingUtility();
 
   private static final TableName TABLE_NAME = TableName.valueOf("test");
 
-  @BeforeClass
+  @BeforeAll
   public static void setUp() throws Exception {
     UTIL.startMiniCluster(1);
     UTIL.createTable(TABLE_NAME, Bytes.toBytes("d"));
   }
 
-  @AfterClass
+  @AfterAll
   public static void tearDown() throws Exception {
     UTIL.shutdownMiniCluster();
   }
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/client/example/TestHttpProxyExample.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/client/example/TestHttpProxyExample.java
index b3f02073400..96374cb4f1b 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/client/example/TestHttpProxyExample.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/client/example/TestHttpProxyExample.java
@@ -17,10 +17,9 @@
  */
 package org.apache.hadoop.hbase.client.example;
 
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
 import java.nio.charset.StandardCharsets;
-import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.HBaseTestingUtility;
 import org.apache.hadoop.hbase.TableName;
 import org.apache.hadoop.hbase.testclassification.ClientTests;
@@ -34,21 +33,17 @@ import org.apache.http.client.methods.HttpPut;
 import org.apache.http.entity.ContentType;
 import org.apache.http.impl.client.CloseableHttpClient;
 import org.apache.http.impl.client.HttpClientBuilder;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
 
 import org.apache.hbase.thirdparty.com.google.common.io.ByteStreams;
 
-@Category({ ClientTests.class, MediumTests.class })
+@Tag(ClientTests.TAG)
+@Tag(MediumTests.TAG)
 public class TestHttpProxyExample {
 
-  @ClassRule
-  public static final HBaseClassTestRule CLASS_RULE =
-    HBaseClassTestRule.forClass(TestHttpProxyExample.class);
-
   private static final HBaseTestingUtility UTIL = new HBaseTestingUtility();
 
   private static final TableName TABLE_NAME = TableName.valueOf("test");
@@ -67,7 +62,7 @@ public class TestHttpProxyExample {
 
   private static int PORT;
 
-  @BeforeClass
+  @BeforeAll
   public static void setUp() throws Exception {
     UTIL.startMiniCluster(1);
     UTIL.createTable(TABLE_NAME, Bytes.toBytes(FAMILY));
@@ -76,7 +71,7 @@ public class TestHttpProxyExample {
     PORT = PROXY.port();
   }
 
-  @AfterClass
+  @AfterAll
   public static void tearDown() throws Exception {
     if (PROXY != null) {
       PROXY.stop();
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/client/example/TestMultiThreadedClientExample.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/client/example/TestMultiThreadedClientExample.java
index 0db1b229361..4bc7572ed56 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/client/example/TestMultiThreadedClientExample.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/client/example/TestMultiThreadedClientExample.java
@@ -17,23 +17,22 @@
  */
 package org.apache.hadoop.hbase.client.example;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotEquals;
 
-import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.HBaseTestingUtility;
 import org.apache.hadoop.hbase.TableName;
 import org.apache.hadoop.hbase.client.Table;
 import org.apache.hadoop.hbase.testclassification.ClientTests;
 import org.apache.hadoop.hbase.testclassification.MediumTests;
 import org.apache.hadoop.hbase.util.Bytes;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
 
-@Category({ ClientTests.class, MediumTests.class })
+@Tag(ClientTests.TAG)
+@Tag(MediumTests.TAG)
 public class TestMultiThreadedClientExample {
 
   private final static HBaseTestingUtility TEST_UTIL = new 
HBaseTestingUtility();
@@ -43,17 +42,13 @@ public class TestMultiThreadedClientExample {
   private static byte[] familyName = Bytes.toBytes("d");
   private static byte[] columnName = Bytes.toBytes("col");
 
-  @ClassRule
-  public static final HBaseClassTestRule CLASS_RULE =
-    HBaseClassTestRule.forClass(TestMultiThreadedClientExample.class);
-
-  @BeforeClass
+  @BeforeAll
   public static void setup() throws Exception {
     TEST_UTIL.startMiniCluster(1);
     table = TEST_UTIL.createTable(MY_TABLE_NAME, familyName);
   }
 
-  @AfterClass
+  @AfterAll
   public static void tearDown() throws Exception {
     TEST_UTIL.deleteTable(MY_TABLE_NAME);
     TEST_UTIL.shutdownMiniCluster();
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/client/example/TestRefreshHFilesClient.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/client/example/TestRefreshHFilesClient.java
index b5eac9bacbf..5ef27aae9e3 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/client/example/TestRefreshHFilesClient.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/client/example/TestRefreshHFilesClient.java
@@ -17,26 +17,22 @@
  */
 package org.apache.hadoop.hbase.client.example;
 
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
-import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.coprocessor.example.TestRefreshHFilesBase;
 import org.apache.hadoop.hbase.regionserver.HRegion;
 import org.apache.hadoop.hbase.testclassification.ClientTests;
 import org.apache.hadoop.hbase.testclassification.MediumTests;
 import org.apache.hadoop.util.ToolRunner;
-import org.junit.BeforeClass;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
 
-@Category({ ClientTests.class, MediumTests.class })
+@Tag(ClientTests.TAG)
+@Tag(MediumTests.TAG)
 public class TestRefreshHFilesClient extends TestRefreshHFilesBase {
-  @ClassRule
-  public static final HBaseClassTestRule CLASS_RULE =
-    HBaseClassTestRule.forClass(TestRefreshHFilesClient.class);
 
-  @BeforeClass
+  @BeforeAll
   public static void setUp() {
     setUp(HRegion.class.getName());
   }
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestRefreshHFilesBase.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestRefreshHFilesBase.java
index 4b44ed24573..dff65a003c2 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestRefreshHFilesBase.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestRefreshHFilesBase.java
@@ -31,7 +31,7 @@ import org.apache.hadoop.hbase.regionserver.Region;
 import org.apache.hadoop.hbase.util.Bytes;
 import org.apache.hadoop.hbase.util.CommonFSUtils;
 import org.apache.hadoop.hbase.util.HFileTestUtil;
-import org.junit.After;
+import org.junit.jupiter.api.AfterEach;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -70,7 +70,7 @@ public class TestRefreshHFilesBase {
     }
   }
 
-  @After
+  @AfterEach
   public void tearDown() throws Exception {
     HTU.shutdownMiniCluster();
   }
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestRefreshHFilesEndpoint.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestRefreshHFilesEndpoint.java
index 4d6a6d3b1ab..4ed9f924a43 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestRefreshHFilesEndpoint.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestRefreshHFilesEndpoint.java
@@ -17,8 +17,9 @@
  */
 package org.apache.hadoop.hbase.coprocessor.example;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.fail;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -26,7 +27,6 @@ import java.util.List;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
-import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;
 import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;
 import org.apache.hadoop.hbase.client.RegionInfo;
@@ -38,15 +38,11 @@ import org.apache.hadoop.hbase.regionserver.HStore;
 import org.apache.hadoop.hbase.regionserver.RegionServerServices;
 import org.apache.hadoop.hbase.testclassification.MediumTests;
 import org.apache.hadoop.hbase.wal.WAL;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
 
-@Category(MediumTests.class)
+@Tag(MediumTests.TAG)
 public class TestRefreshHFilesEndpoint extends TestRefreshHFilesBase {
-  @ClassRule
-  public static final HBaseClassTestRule CLASS_RULE =
-    HBaseClassTestRule.forClass(TestRefreshHFilesEndpoint.class);
 
   @Test
   public void testRefreshRegionHFilesEndpoint() throws Exception {
@@ -57,10 +53,10 @@ public class TestRefreshHFilesEndpoint extends 
TestRefreshHFilesBase {
     assertEquals(4, HTU.getNumHFiles(TABLE_NAME, FAMILY));
   }
 
-  @Test(expected = IOException.class)
+  @Test
   public void testRefreshRegionHFilesEndpointWithException() throws 
IOException {
     setUp(HRegionForRefreshHFilesEP.class.getName());
-    callRefreshRegionHFilesEndPoint();
+    assertThrows(IOException.class, () -> callRefreshRegionHFilesEndPoint());
   }
 
   private void callRefreshRegionHFilesEndPoint() throws IOException {
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestScanModifyingObserver.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestScanModifyingObserver.java
index 05e8a1cb74b..41d5d2d49f9 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestScanModifyingObserver.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestScanModifyingObserver.java
@@ -17,15 +17,14 @@
  */
 package org.apache.hadoop.hbase.coprocessor.example;
 
-import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
 
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
-import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.HBaseTestingUtility;
 import org.apache.hadoop.hbase.TableName;
 import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;
@@ -39,19 +38,15 @@ import 
org.apache.hadoop.hbase.client.TableDescriptorBuilder;
 import org.apache.hadoop.hbase.testclassification.CoprocessorTests;
 import org.apache.hadoop.hbase.testclassification.MediumTests;
 import org.apache.hadoop.hbase.util.Bytes;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
 
-@Category({ CoprocessorTests.class, MediumTests.class })
+@Tag(CoprocessorTests.TAG)
+@Tag(MediumTests.TAG)
 public class TestScanModifyingObserver {
 
-  @ClassRule
-  public static final HBaseClassTestRule CLASS_RULE =
-    HBaseClassTestRule.forClass(TestScanModifyingObserver.class);
-
   private static final HBaseTestingUtility UTIL = new HBaseTestingUtility();
   private static final TableName NAME = 
TableName.valueOf("TestScanModifications");
   private static final byte[] FAMILY = Bytes.toBytes("f");
@@ -63,7 +58,7 @@ public class TestScanModifyingObserver {
   private static final byte[] EXPLICIT_VAL = Bytes.toBytes("provided");
   private static final byte[] IMPLICIT_VAL = Bytes.toBytes("implicit");
 
-  @BeforeClass
+  @BeforeAll
   public static void setUp() throws Exception {
     UTIL.startMiniCluster(1);
     UTIL.getAdmin()
@@ -74,7 +69,7 @@ public class TestScanModifyingObserver {
         .setColumnFamily(CFD).build());
   }
 
-  @AfterClass
+  @AfterAll
   public static void tearDown() throws Exception {
     UTIL.shutdownMiniCluster();
   }
@@ -101,7 +96,7 @@ public class TestScanModifyingObserver {
       try (ResultScanner scanner = t.getScanner(s)) {
         for (int i = 0; i < NUM_ROWS; i++) {
           Result result = scanner.next();
-          assertNotNull("The " + (i + 1) + "th result was unexpectedly null", 
result);
+          assertNotNull(result, "The " + (i + 1) + "th result was unexpectedly 
null");
           assertEquals(2, result.getFamilyMap(FAMILY).size());
           assertArrayEquals(Bytes.toBytes(i + 1), result.getRow());
           assertArrayEquals(EXPLICIT_VAL, result.getValue(FAMILY, 
EXPLICIT_QUAL));
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestValueReplacingCompaction.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestValueReplacingCompaction.java
index 1e5c0b99832..30b3997c1f2 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestValueReplacingCompaction.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestValueReplacingCompaction.java
@@ -17,15 +17,14 @@
  */
 package org.apache.hadoop.hbase.coprocessor.example;
 
-import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
 
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
-import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.HBaseTestingUtility;
 import org.apache.hadoop.hbase.TableName;
 import org.apache.hadoop.hbase.client.ColumnFamilyDescriptor;
@@ -39,19 +38,15 @@ import 
org.apache.hadoop.hbase.client.TableDescriptorBuilder;
 import org.apache.hadoop.hbase.testclassification.CoprocessorTests;
 import org.apache.hadoop.hbase.testclassification.MediumTests;
 import org.apache.hadoop.hbase.util.Bytes;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
 
-@Category({ CoprocessorTests.class, MediumTests.class })
+@Tag(CoprocessorTests.TAG)
+@Tag(MediumTests.TAG)
 public class TestValueReplacingCompaction {
 
-  @ClassRule
-  public static final HBaseClassTestRule CLASS_RULE =
-    HBaseClassTestRule.forClass(TestValueReplacingCompaction.class);
-
   private static final HBaseTestingUtility UTIL = new HBaseTestingUtility();
   private static final TableName NAME = 
TableName.valueOf("TestValueReplacement");
   private static final byte[] FAMILY = Bytes.toBytes("f");
@@ -62,7 +57,7 @@ public class TestValueReplacingCompaction {
   private static final String value = "foo";
   private static final String replacedValue = "bar";
 
-  @BeforeClass
+  @BeforeAll
   public static void setUp() throws Exception {
     UTIL.startMiniCluster(1);
     UTIL.getAdmin()
@@ -73,7 +68,7 @@ public class TestValueReplacingCompaction {
         .build());
   }
 
-  @AfterClass
+  @AfterAll
   public static void tearDown() throws Exception {
     UTIL.shutdownMiniCluster();
   }
@@ -104,7 +99,7 @@ public class TestValueReplacingCompaction {
       try (ResultScanner scanner = t.getScanner(s)) {
         for (int i = 0; i < NUM_ROWS; i++) {
           Result result = scanner.next();
-          assertNotNull("The " + (i + 1) + "th result was unexpectedly null", 
result);
+          assertNotNull(result, "The " + (i + 1) + "th result was unexpectedly 
null");
           assertEquals(1, result.getFamilyMap(FAMILY).size());
           assertArrayEquals(Bytes.toBytes(i + 1), result.getRow());
           assertArrayEquals(Bytes.toBytes(replacedValue), 
result.getValue(FAMILY, QUALIFIER));
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestWriteHeavyIncrementObserver.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestWriteHeavyIncrementObserver.java
index f0d7591dadd..270f15f2d1f 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestWriteHeavyIncrementObserver.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestWriteHeavyIncrementObserver.java
@@ -17,10 +17,9 @@
  */
 package org.apache.hadoop.hbase.coprocessor.example;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
-import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;
 import org.apache.hadoop.hbase.client.Result;
 import org.apache.hadoop.hbase.client.ResultScanner;
@@ -30,19 +29,16 @@ import org.apache.hadoop.hbase.regionserver.HRegion;
 import org.apache.hadoop.hbase.regionserver.HStore;
 import org.apache.hadoop.hbase.testclassification.CoprocessorTests;
 import org.apache.hadoop.hbase.testclassification.MediumTests;
-import org.junit.BeforeClass;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
 
-@Category({ CoprocessorTests.class, MediumTests.class })
+@Tag(CoprocessorTests.TAG)
+@Tag(MediumTests.TAG)
 public class TestWriteHeavyIncrementObserver extends 
WriteHeavyIncrementObserverTestBase {
 
-  @ClassRule
-  public static final HBaseClassTestRule CLASS_RULE =
-    HBaseClassTestRule.forClass(TestWriteHeavyIncrementObserver.class);
-
-  @BeforeClass
+  @BeforeAll
   public static void setUp() throws Exception {
     WriteHeavyIncrementObserverTestBase.setUp();
     UTIL.getAdmin()
@@ -52,6 +48,14 @@ public class TestWriteHeavyIncrementObserver extends 
WriteHeavyIncrementObserver
     TABLE = UTIL.getConnection().getTable(NAME);
   }
 
+  @AfterAll
+  public static void tearDown() throws Exception {
+    if (TABLE != null) {
+      TABLE.close();
+    }
+    UTIL.shutdownMiniCluster();
+  }
+
   @Test
   public void test() throws Exception {
     doIncrement(0);
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestWriteHeavyIncrementObserverWithMemStoreCompaction.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestWriteHeavyIncrementObserverWithMemStoreCompaction.java
index 22409bebd0e..0314a171968 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestWriteHeavyIncrementObserverWithMemStoreCompaction.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestWriteHeavyIncrementObserverWithMemStoreCompaction.java
@@ -17,9 +17,8 @@
  */
 package org.apache.hadoop.hbase.coprocessor.example;
 
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
-import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.MemoryCompactionPolicy;
 import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;
 import org.apache.hadoop.hbase.client.TableDescriptorBuilder;
@@ -27,20 +26,17 @@ import 
org.apache.hadoop.hbase.regionserver.CompactingMemStore;
 import org.apache.hadoop.hbase.regionserver.HStore;
 import org.apache.hadoop.hbase.testclassification.CoprocessorTests;
 import org.apache.hadoop.hbase.testclassification.MediumTests;
-import org.junit.BeforeClass;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
 
-@Category({ CoprocessorTests.class, MediumTests.class })
+@Tag(CoprocessorTests.TAG)
+@Tag(MediumTests.TAG)
 public class TestWriteHeavyIncrementObserverWithMemStoreCompaction
   extends WriteHeavyIncrementObserverTestBase {
 
-  @ClassRule
-  public static final HBaseClassTestRule CLASS_RULE =
-    
HBaseClassTestRule.forClass(TestWriteHeavyIncrementObserverWithMemStoreCompaction.class);
-
-  @BeforeClass
+  @BeforeAll
   public static void setUp() throws Exception {
     WriteHeavyIncrementObserverTestBase.setUp();
     UTIL.getAdmin()
@@ -52,6 +48,14 @@ public class 
TestWriteHeavyIncrementObserverWithMemStoreCompaction
     TABLE = UTIL.getConnection().getTable(NAME);
   }
 
+  @AfterAll
+  public static void tearDown() throws Exception {
+    if (TABLE != null) {
+      TABLE.close();
+    }
+    UTIL.shutdownMiniCluster();
+  }
+
   @Test
   public void test() throws Exception {
     // sleep every 10 loops to give memstore compaction enough time to finish 
before reaching the
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestZooKeeperScanPolicyObserver.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestZooKeeperScanPolicyObserver.java
index 569c429b5ac..7b8ce36dad2 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestZooKeeperScanPolicyObserver.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestZooKeeperScanPolicyObserver.java
@@ -17,11 +17,10 @@
  */
 package org.apache.hadoop.hbase.coprocessor.example;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
 
 import java.io.IOException;
-import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.HBaseTestingUtility;
 import org.apache.hadoop.hbase.TableName;
 import org.apache.hadoop.hbase.client.ColumnFamilyDescriptorBuilder;
@@ -38,19 +37,15 @@ import org.apache.zookeeper.CreateMode;
 import org.apache.zookeeper.KeeperException;
 import org.apache.zookeeper.ZooDefs;
 import org.apache.zookeeper.ZooKeeper;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
 
-@Category({ CoprocessorTests.class, MediumTests.class })
+@Tag(CoprocessorTests.TAG)
+@Tag(MediumTests.TAG)
 public class TestZooKeeperScanPolicyObserver {
 
-  @ClassRule
-  public static final HBaseClassTestRule CLASS_RULE =
-    HBaseClassTestRule.forClass(TestZooKeeperScanPolicyObserver.class);
-
   private static final HBaseTestingUtility UTIL = new HBaseTestingUtility();
 
   private static TableName NAME = TableName.valueOf("TestCP");
@@ -61,7 +56,7 @@ public class TestZooKeeperScanPolicyObserver {
 
   private static Table TABLE;
 
-  @BeforeClass
+  @BeforeAll
   public static void setUp() throws Exception {
     UTIL.startMiniCluster(3);
     UTIL.getAdmin()
@@ -74,7 +69,7 @@ public class TestZooKeeperScanPolicyObserver {
     TABLE = UTIL.getConnection().getTable(NAME);
   }
 
-  @AfterClass
+  @AfterAll
   public static void tearDown() throws Exception {
     if (TABLE != null) {
       TABLE.close();
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserverTestBase.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserverTestBase.java
index b1b00ed3b9d..265b5db5132 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserverTestBase.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/WriteHeavyIncrementObserverTestBase.java
@@ -17,7 +17,7 @@
  */
 package org.apache.hadoop.hbase.coprocessor.example;
 
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
 import java.io.IOException;
 import java.io.InterruptedIOException;
@@ -32,8 +32,6 @@ import org.apache.hadoop.hbase.client.Result;
 import org.apache.hadoop.hbase.client.Table;
 import org.apache.hadoop.hbase.regionserver.CompactingMemStore;
 import org.apache.hadoop.hbase.util.Bytes;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
 
 public class WriteHeavyIncrementObserverTestBase {
 
@@ -55,7 +53,6 @@ public class WriteHeavyIncrementObserverTestBase {
 
   protected static int THREADS = 10;
 
-  @BeforeClass
   public static void setUp() throws Exception {
     UTIL.getConfiguration().setLong(HConstants.HREGION_MEMSTORE_FLUSH_SIZE, 64 
* 1024L);
     UTIL.getConfiguration().setLong("hbase.hregion.memstore.flush.size.limit", 
1024L);
@@ -64,14 +61,6 @@ public class WriteHeavyIncrementObserverTestBase {
     UTIL.startMiniCluster(3);
   }
 
-  @AfterClass
-  public static void tearDown() throws Exception {
-    if (TABLE != null) {
-      TABLE.close();
-    }
-    UTIL.shutdownMiniCluster();
-  }
-
   private static void increment(int sleepSteps) throws IOException {
     for (long i = 1; i <= UPPER; i++) {
       TABLE.increment(new Increment(ROW).addColumn(FAMILY, CQ1, 
i).addColumn(FAMILY, CQ2, 2 * i));
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/row/stats/TestRowStatisticsEventHandler.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/row/stats/TestRowStatisticsEventHandler.java
index e009ceaed5e..423f23073a7 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/row/stats/TestRowStatisticsEventHandler.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/row/stats/TestRowStatisticsEventHandler.java
@@ -34,10 +34,13 @@ import 
org.apache.hadoop.hbase.coprocessor.example.row.stats.ringbuffer.RowStati
 import 
org.apache.hadoop.hbase.coprocessor.example.row.stats.ringbuffer.RowStatisticsRingBufferPayload;
 import org.apache.hadoop.hbase.metrics.Counter;
 import org.apache.hadoop.hbase.metrics.impl.CounterImpl;
+import org.apache.hadoop.hbase.testclassification.SmallTests;
 import org.apache.hadoop.hbase.util.Bytes;
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.jupiter.api.Tag;
 
+@Tag(SmallTests.TAG)
 public class TestRowStatisticsEventHandler {
 
   private static final String REGION_STRING = "REGION_STRING";
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/row/stats/TestRowStatisticsTableRecorder.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/row/stats/TestRowStatisticsTableRecorder.java
index a45e01fc9d9..c9dc9f2682f 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/row/stats/TestRowStatisticsTableRecorder.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/row/stats/TestRowStatisticsTableRecorder.java
@@ -18,9 +18,9 @@
 package org.apache.hadoop.hbase.coprocessor.example.row.stats;
 
 import static org.apache.hadoop.hbase.util.TestRegionSplitCalculator.TEST_UTIL;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
 import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
@@ -37,14 +37,14 @@ import 
org.apache.hadoop.hbase.coprocessor.example.row.stats.recorder.RowStatist
 import 
org.apache.hadoop.hbase.coprocessor.example.row.stats.utils.RowStatisticsTableUtil;
 import org.apache.hadoop.hbase.metrics.Counter;
 import org.apache.hadoop.hbase.metrics.impl.CounterImpl;
+import org.apache.hadoop.hbase.testclassification.MediumTests;
 import org.apache.hadoop.hbase.util.Bytes;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
 
-@RunWith(MockitoJUnitRunner.class)
+@Tag(MediumTests.TAG)
 public class TestRowStatisticsTableRecorder {
 
   private static final NamespaceDescriptor NAMESPACE_DESCRIPTOR =
@@ -55,7 +55,7 @@ public class TestRowStatisticsTableRecorder {
   private RowStatisticsImpl rowStatistics;
   private Counter counter;
 
-  @BeforeClass
+  @BeforeAll
   public static void setUpClass() throws Exception {
     cluster = TEST_UTIL.startMiniCluster(1);
     connection = ConnectionFactory.createConnection(cluster.getConf());
@@ -64,7 +64,7 @@ public class TestRowStatisticsTableRecorder {
     TEST_UTIL.createTable(RowStatisticsTableUtil.NAMESPACED_TABLE_NAME, 
RowStatisticsTableUtil.CF);
   }
 
-  @Before
+  @BeforeEach
   public void setup() {
     rowStatistics = mock(RowStatisticsImpl.class);
     counter = new CounterImpl();
@@ -88,7 +88,7 @@ public class TestRowStatisticsTableRecorder {
       RowStatisticsTableRecorder.forClusterConnection(connection, counter, 
counter);
     assertNotNull(recorder);
     recorder.record(rowStatistics, Optional.of(FULL_REGION_NAME));
-    assertEquals(counter.getCount(), 0);
+    assertEquals(0, counter.getCount());
   }
 
   @Test
@@ -98,6 +98,6 @@ public class TestRowStatisticsTableRecorder {
     assertNotNull(recorder);
     recorder.close();
     recorder.record(rowStatistics, Optional.of(FULL_REGION_NAME));
-    assertEquals(counter.getCount(), 1);
+    assertEquals(1, counter.getCount());
   }
 }
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/row/stats/sizebucket/TestSizeBucketTracker.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/row/stats/sizebucket/TestSizeBucketTracker.java
index de5bc583416..b189f6a6d02 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/row/stats/sizebucket/TestSizeBucketTracker.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/row/stats/sizebucket/TestSizeBucketTracker.java
@@ -17,15 +17,18 @@
  */
 package org.apache.hadoop.hbase.coprocessor.example.row.stats.sizebucket;
 
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
 
 import java.util.Map;
 import org.apache.hadoop.hbase.coprocessor.example.row.stats.SizeBucket;
 import org.apache.hadoop.hbase.coprocessor.example.row.stats.SizeBucketTracker;
-import org.junit.Test;
+import org.apache.hadoop.hbase.testclassification.SmallTests;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
 
 import org.apache.hbase.thirdparty.com.google.gson.JsonObject;
 
+@Tag(SmallTests.TAG)
 public class TestSizeBucketTracker {
 
   @Test
@@ -36,7 +39,7 @@ public class TestSizeBucketTracker {
     // Initialize
     Map<String, Long> bucketToCount = sizeBucketTracker.toMap();
     for (SizeBucket sizeBucket : SizeBucket.values()) {
-      assertEquals((long) bucketToCount.get(sizeBucket.bucket()), 0L);
+      assertEquals(0L, (long) bucketToCount.get(sizeBucket.bucket()));
     }
 
     // minBytes
@@ -45,7 +48,7 @@ public class TestSizeBucketTracker {
     }
     bucketToCount = sizeBucketTracker.toMap();
     for (SizeBucket sizeBucket : sizeBuckets) {
-      assertEquals((long) bucketToCount.get(sizeBucket.bucket()), 1L);
+      assertEquals(1L, (long) bucketToCount.get(sizeBucket.bucket()));
     }
 
     // maxBytes - 1
@@ -54,7 +57,7 @@ public class TestSizeBucketTracker {
     }
     bucketToCount = sizeBucketTracker.toMap();
     for (SizeBucket sizeBucket : sizeBuckets) {
-      assertEquals((long) bucketToCount.get(sizeBucket.bucket()), 2L);
+      assertEquals(2L, (long) bucketToCount.get(sizeBucket.bucket()));
     }
 
     // maxBytes
@@ -65,13 +68,13 @@ public class TestSizeBucketTracker {
     for (int i = 0; i < sizeBuckets.length - 1; i++) {
       SizeBucket currBucket = sizeBuckets[i];
       if (currBucket == SizeBucket.KILOBYTES_1) {
-        assertEquals((long) bucketToCount.get(currBucket.bucket()), 2L);
+        assertEquals(2L, (long) bucketToCount.get(currBucket.bucket()));
       } else {
         SizeBucket nextBucket = sizeBuckets[i + 1];
         if (nextBucket == SizeBucket.KILOBYTES_MAX) {
-          assertEquals((long) bucketToCount.get(nextBucket.bucket()), 4L);
+          assertEquals(4L, (long) bucketToCount.get(nextBucket.bucket()));
         } else {
-          assertEquals((long) bucketToCount.get(nextBucket.bucket()), 3L);
+          assertEquals(3L, (long) bucketToCount.get(nextBucket.bucket()));
         }
       }
     }
@@ -87,7 +90,7 @@ public class TestSizeBucketTracker {
     JsonObject mapJson = sizeBucketTracker.toJsonObject();
     for (SizeBucket sizeBucket : sizeBuckets) {
       Number count = mapJson.get(sizeBucket.bucket()).getAsNumber();
-      assertEquals(count.longValue(), 1L);
+      assertEquals(1L, count.longValue());
     }
   }
 }
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/mapreduce/TestMapReduceExamples.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/mapreduce/TestMapReduceExamples.java
index f1f08084f98..09b666a15c1 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/mapreduce/TestMapReduceExamples.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/mapreduce/TestMapReduceExamples.java
@@ -17,9 +17,9 @@
  */
 package org.apache.hadoop.hbase.mapreduce;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
 import static org.mockito.Mockito.any;
 import static org.mockito.Mockito.doAnswer;
 import static org.mockito.Mockito.mock;
@@ -29,7 +29,6 @@ import java.io.ByteArrayOutputStream;
 import java.io.PrintStream;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.Path;
-import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.HBaseTestingUtility;
 import org.apache.hadoop.hbase.client.Put;
 import org.apache.hadoop.hbase.client.Result;
@@ -46,17 +45,14 @@ import org.apache.hadoop.mapreduce.Job;
 import org.apache.hadoop.mapreduce.Mapper;
 import org.apache.hadoop.mapreduce.Mapper.Context;
 import org.apache.hadoop.mapreduce.lib.input.SequenceFileInputFormat;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
 import org.mockito.invocation.InvocationOnMock;
 import org.mockito.stubbing.Answer;
 
-@Category({ MapReduceTests.class, LargeTests.class })
+@Tag(MapReduceTests.TAG)
+@Tag(LargeTests.TAG)
 public class TestMapReduceExamples {
-  @ClassRule
-  public static final HBaseClassTestRule CLASS_RULE =
-    HBaseClassTestRule.forClass(TestMapReduceExamples.class);
 
   private static HBaseTestingUtility util = new HBaseTestingUtility();
 
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/security/provider/example/TestShadeSaslAuthenticationProvider.java
 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/security/provider/example/TestShadeSaslAuthenticationProvider.java
index 1d0bb40b440..a68d9837fde 100644
--- 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/security/provider/example/TestShadeSaslAuthenticationProvider.java
+++ 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/security/provider/example/TestShadeSaslAuthenticationProvider.java
@@ -17,11 +17,11 @@
  */
 package org.apache.hadoop.hbase.security.provider.example;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
 
 import java.io.BufferedWriter;
 import java.io.File;
@@ -40,7 +40,6 @@ import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.hbase.Cell;
 import org.apache.hadoop.hbase.CellUtil;
-import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.HBaseTestingUtility;
 import org.apache.hadoop.hbase.HConstants;
 import org.apache.hadoop.hbase.LocalHBaseCluster;
@@ -67,26 +66,22 @@ import org.apache.hadoop.hbase.util.CommonFSUtils;
 import org.apache.hadoop.hbase.util.Pair;
 import org.apache.hadoop.minikdc.MiniKdc;
 import org.apache.hadoop.security.UserGroupInformation;
-import org.junit.AfterClass;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.ClassRule;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
-import org.junit.rules.TestName;
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.TestInfo;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-@Category({ MediumTests.class, SecurityTests.class })
+@Tag(MediumTests.TAG)
+@Tag(SecurityTests.TAG)
 public class TestShadeSaslAuthenticationProvider {
+
   private static final Logger LOG =
     LoggerFactory.getLogger(TestShadeSaslAuthenticationProvider.class);
 
-  @ClassRule
-  public static final HBaseClassTestRule CLASS_RULE =
-    HBaseClassTestRule.forClass(TestShadeSaslAuthenticationProvider.class);
-
   private static final char[] USER1_PASSWORD = "foobarbaz".toCharArray();
 
   static LocalHBaseCluster createCluster(HBaseTestingUtility util, File 
keytabFile, MiniKdc kdc,
@@ -138,7 +133,7 @@ public class TestShadeSaslAuthenticationProvider {
   private static File KEYTAB_FILE;
   private static Path USER_DATABASE_FILE;
 
-  @BeforeClass
+  @BeforeAll
   public static void setupCluster() throws Exception {
     KEYTAB_FILE = new File(UTIL.getDataTestDir("keytab").toUri().getPath());
     final MiniKdc kdc = UTIL.setupMiniKdc(KEYTAB_FILE);
@@ -156,7 +151,7 @@ public class TestShadeSaslAuthenticationProvider {
     CLUSTER.startup();
   }
 
-  @AfterClass
+  @AfterAll
   public static void teardownCluster() throws Exception {
     if (CLUSTER != null) {
       CLUSTER.shutdown();
@@ -165,14 +160,12 @@ public class TestShadeSaslAuthenticationProvider {
     UTIL.shutdownMiniZKCluster();
   }
 
-  @Rule
-  public TestName name = new TestName();
   TableName tableName;
   String clusterId;
 
-  @Before
-  public void createTable() throws Exception {
-    tableName = TableName.valueOf(name.getMethodName());
+  @BeforeEach
+  public void createTable(TestInfo testInfo) throws Exception {
+    tableName = TableName.valueOf(testInfo.getTestMethod().get().getName());
 
     // Create a table and write a record as the service user (hbase)
     UserGroupInformation serviceUgi = UserGroupInformation
@@ -215,9 +208,9 @@ public class TestShadeSaslAuthenticationProvider {
             try (Table t = conn.getTable(tableName)) {
               Result r = t.get(new Get(Bytes.toBytes("r1")));
               assertNotNull(r);
-              assertFalse("Should have read a non-empty Result", r.isEmpty());
+              assertFalse(r.isEmpty(), "Should have read a non-empty Result");
               final Cell cell = r.getColumnLatestCell(Bytes.toBytes("f1"), 
Bytes.toBytes("q1"));
-              assertTrue("Unexpected value", CellUtil.matchingValue(cell, 
Bytes.toBytes("1")));
+              assertTrue(CellUtil.matchingValue(cell, Bytes.toBytes("1")), 
"Unexpected value");
 
               return null;
             }
@@ -257,7 +250,7 @@ public class TestShadeSaslAuthenticationProvider {
               fail("Should not successfully authenticate with HBase");
             } catch (Exception e) {
               LOG.info("Caught exception in negative Master connectivity 
test", e);
-              assertEquals("Found unexpected exception", pair.getSecond(), 
e.getClass());
+              assertEquals(pair.getSecond(), e.getClass(), "Found unexpected 
exception");
             }
             return null;
           }
@@ -273,7 +266,7 @@ public class TestShadeSaslAuthenticationProvider {
               fail("Should not successfully authenticate with HBase");
             } catch (Exception e) {
               LOG.info("Caught exception in negative RegionServer connectivity 
test", e);
-              assertEquals("Found unexpected exception", pair.getSecond(), 
e.getClass());
+              assertEquals(pair.getSecond(), e.getClass(), "Found unexpected 
exception");
             }
             return null;
           }
diff --git 
a/hbase-examples/src/test/java/org/apache/hadoop/hbase/types/TestPBCell.java 
b/hbase-examples/src/test/java/org/apache/hadoop/hbase/types/TestPBCell.java
index abc2ccd692b..b3e4fd6c418 100644
--- a/hbase-examples/src/test/java/org/apache/hadoop/hbase/types/TestPBCell.java
+++ b/hbase-examples/src/test/java/org/apache/hadoop/hbase/types/TestPBCell.java
@@ -17,14 +17,13 @@
  */
 package org.apache.hadoop.hbase.types;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
 import org.apache.hadoop.hbase.Cell;
 import org.apache.hadoop.hbase.CellBuilderType;
 import org.apache.hadoop.hbase.CellUtil;
 import org.apache.hadoop.hbase.ExtendedCellBuilderFactory;
-import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.KeyValue;
 import org.apache.hadoop.hbase.protobuf.ProtobufUtil;
 import org.apache.hadoop.hbase.protobuf.generated.CellProtos;
@@ -33,16 +32,13 @@ import 
org.apache.hadoop.hbase.testclassification.SmallTests;
 import org.apache.hadoop.hbase.util.Bytes;
 import org.apache.hadoop.hbase.util.PositionedByteRange;
 import org.apache.hadoop.hbase.util.SimplePositionedByteRange;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
 
-@Category({ SmallTests.class, MiscTests.class })
+@Tag(MiscTests.TAG)
+@Tag(SmallTests.TAG)
 public class TestPBCell {
 
-  @ClassRule
-  public static final HBaseClassTestRule CLASS_RULE = 
HBaseClassTestRule.forClass(TestPBCell.class);
-
   private static final PBCell CODEC = new PBCell();
 
   /**

Reply via email to