Skip to content

HBASE-30138 Upgrade hbase-server to use junit5 Part16#8191

Merged
liuxiaocs7 merged 2 commits into
apache:masterfrom
liuxiaocs7:HBASE-30138
May 23, 2026
Merged

HBASE-30138 Upgrade hbase-server to use junit5 Part16#8191
liuxiaocs7 merged 2 commits into
apache:masterfrom
liuxiaocs7:HBASE-30138

Conversation

@liuxiaocs7
Copy link
Copy Markdown
Member

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR continues the HBASE-30138 effort to migrate hbase-server tests from JUnit4 to JUnit5, updating lifecycle annotations, assertions, categories/tags, and converting JUnit4 parameterized/rule patterns to their JUnit5 equivalents (including HBase’s @HBaseParameterizedTestTemplate).

Changes:

  • Migrated numerous RegionServer-related tests from JUnit4 (@Before/@After/@Category/@RunWith, Rules) to JUnit5 (@BeforeEach/@AfterEach/@Tag, extensions, TestInfo).
  • Converted JUnit4 parameterized tests to JUnit5 @TestTemplate + @HBaseParameterizedTestTemplate with Stream<Arguments> parameters().
  • Updated assertions to JUnit5 org.junit.jupiter.api.Assertions styles and modern exception assertions (assertThrows).

Reviewed changes

Copilot reviewed 51 out of 51 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestNotCleanupCompactedFileWhenRegionWarmup.java JUnit5 lifecycle/tag/assert migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestNewVersionBehaviorFromClientSide.java Replace JUnit4 rules with TestInfo-based naming and JUnit5 annotations.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMutateRowsRecovery.java JUnit5 lifecycle/tag/assert migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMultiVersionConcurrencyControlBasic.java Replace @Category with @Tag, JUnit5 assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMultiVersionConcurrencyControl.java Replace JUnit4 Assert usage with JUnit5 assertions and tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMultiLogThreshold.java Convert JUnit4 parameterized test to @HBaseParameterizedTestTemplate + @TestTemplate.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMultiColumnScannerWithNoneAndUseDataEncoding.java Convert parameterized runner to @HBaseParameterizedTestTemplate + constructor params.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMultiColumnScannerWithNoneAndNoDataEncoding.java Convert parameterized runner to @HBaseParameterizedTestTemplate + constructor params.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMultiColumnScannerWithAlgoGZAndUseDataEncoding.java Convert parameterized runner to @HBaseParameterizedTestTemplate + constructor params.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMultiColumnScannerWithAlgoGZAndNoDataEncoding.java Convert parameterized runner to @HBaseParameterizedTestTemplate + constructor params.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMultiColumnScanner.java Refactor parameter handling for JUnit5 @TestTemplate and Stream<Arguments>.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMinVersions.java Replace JUnit4 rules with TestInfo, JUnit5 tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMinorCompaction.java Replace TestName rule with TestInfo, JUnit5 lifecycle/tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMiniBatchOperationInProgress.java JUnit5 tag/assert migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMetricsUserAggregate.java JUnit5 lifecycle/tags migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMetricsTableRequests.java JUnit5 tag/assert migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMetricsTableMetricsMap.java JUnit5 lifecycle/tags/assert migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMetricsTableAggregate.java JUnit5 lifecycle/tags/assert migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMetricsRegionWrapperTableDescriptorHash.java JUnit5 lifecycle/tags/assert migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMetricsRegionServerAggregate.java JUnit5 tag/assert migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMetricsRegionServer.java JUnit5 lifecycle/tags migration (keeps registry cleanup).
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMetricsRegion.java JUnit5 tag migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMetricsJvm.java Migrate junit.framework/JUnit4 assertions to JUnit5; JUnit5 lifecycle/tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMetricsHeapMemoryManager.java JUnit5 lifecycle/tags/assert migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMergesSplitsAddToTracker.java Replace deprecated TableNameTestRule with TableNameTestExtension; JUnit5 migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMemStoreSegmentsIterator.java JUnit5 lifecycle/tags/assert migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMemstoreLABWithoutPool.java Convert @Ignore to @Disabled; JUnit5 tags/lifecycle/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMemStoreLAB.java JUnit5 lifecycle/tags/assert migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMemStoreFlusher.java Replace TestName rule with TestInfo; JUnit5 migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMemStoreChunkPool.java JUnit5 lifecycle/tags/assert migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMaxResultsPerColumnFamily.java Replace TestName rule with TestInfo; JUnit5 lifecycle/tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestMajorCompaction.java Convert JUnit4 parameterized runner to @HBaseParameterizedTestTemplate + @TestTemplate.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestLogRoller.java JUnit5 lifecycle/tags/assert migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestKeyValueScanFixture.java JUnit5 tag/assert migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestKeyValueHeap.java JUnit5 tag/assert migration; modernize assertThrows import.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestKeepDeletes.java Replace TestName rule with TestInfo; JUnit5 lifecycle/tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestJoinedScanners.java Replace @Test(expected=...) with assertThrows; JUnit5 lifecycle/tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestIsDeleteFailure.java Replace TestName rule with TestInfo; JUnit5 lifecycle/tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestInputStreamBlockDistribution.java JUnit5 lifecycle/tags/assert migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHStoreFile.java Replace TestName rule with TestInfo; JUnit5 lifecycle/tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHStore.java Replace TestName rule with TestInfo; migrate JUnit timeout to @Timeout.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegionWithInMemoryFlush.java JUnit5 tag/assert migration for subclass of TestHRegion.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegionTracing.java Migrate OpenTelemetry + TableName helpers to JUnit5 extensions and lifecycle annotations.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegionServerBulkLoad.java Convert JUnit4 parameterized runner to @HBaseParameterizedTestTemplate + @TestTemplate.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegionReplayEvents.java Replace TestName rule with TestInfo; JUnit5 lifecycle/tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegionOnCluster.java Replace TestName rule with TestInfo; JUnit5 lifecycle/tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegionFileSystem.java Replace TestName rule with TestInfo; JUnit5 lifecycle/tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java Large-scale JUnit5 migration: rules → TestInfo, expected-exception → assertThrows, tags/lifecycle updates.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHMobStore.java Replace TestName rule with TestInfo; migrate to JUnit5 assertions/tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHeapMemoryManager.java JUnit5 tag/assert migration.
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHdfsSnapshotHRegion.java JUnit5 lifecycle/tags/assert migration.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@liuxiaocs7 liuxiaocs7 marked this pull request as draft May 4, 2026 19:54
@liuxiaocs7 liuxiaocs7 marked this pull request as ready for review May 11, 2026 12:18
@liuxiaocs7 liuxiaocs7 merged commit 45f9d7c into apache:master May 23, 2026
13 of 16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants