Skip to content

HBASE-30066 Upgrade hbase-server to use junit5 Part9#8119

Open
liuxiaocs7 wants to merge 1 commit intoapache:branch-2from
liuxiaocs7:HBASE-30066-branch-2
Open

HBASE-30066 Upgrade hbase-server to use junit5 Part9#8119
liuxiaocs7 wants to merge 1 commit intoapache:branch-2from
liuxiaocs7:HBASE-30066-branch-2

Conversation

@liuxiaocs7
Copy link
Copy Markdown
Member

@liuxiaocs7 liuxiaocs7 requested a review from Copilot April 23, 2026 10:24
@liuxiaocs7 liuxiaocs7 added the backport This PR is a back port of some issue or issues already committed to master label Apr 23, 2026
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

Note

Copilot was unable to run its full agentic suite in this review.

Updates a large set of hbase-server tests to JUnit 5 as part of HBASE-30066 (Part 9), replacing JUnit4 rules/categories/assertions with Jupiter equivalents.

Changes:

  • Migrated test lifecycle annotations (@BeforeClass/@AfterClass/@Rule) to JUnit Jupiter (@BeforeAll/@AfterAll/@BeforeEach/@AfterEach, TestInfo, etc.).
  • Replaced JUnit4 assertions and @Test(expected=...) with Jupiter assertions and assertThrows.
  • Converted test classifications from JUnit4 @Category to Jupiter @Tag.

Reviewed changes

Copilot reviewed 65 out of 65 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/TestSnapshotWhenChoreCleaning.java Ported snapshot cleaner test to Jupiter annotations/assertions/tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/TestSnapshotStoreFileSize.java Ported snapshot storefile size test to Jupiter tags and assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/TestSnapshotManifest.java Migrated snapshot manifest test to Jupiter lifecycle and tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/TestSnapshotDescriptionUtils.java Updated assertions/lifecycle to Jupiter; improved assertion signatures.
hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/TestSnapshotClientRetries.java Replaced @Test(expected=...) with assertThrows and switched to TestInfo.
hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/TestRestoreSnapshotHelper.java Migrated restore snapshot helper tests to Jupiter + updated assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/TestRestoreFlushSnapshotFromClient.java Migrated to Jupiter; switched exception checking to assertThrows; updated tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/TestRegionSnapshotTask.java Migrated region snapshot task test to Jupiter tags/lifecycle.
hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/TestMobRestoreSnapshotHelper.java Converted categories/rules to Jupiter tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/TestMobRestoreFlushSnapshotFromClient.java Converted to Jupiter tags + lifecycle.
hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/TestMobFlushSnapshotFromClient.java Converted to Jupiter tags + lifecycle.
hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/TestFlushSnapshotFromClient.java Converted base flush snapshot tests to Jupiter lifecycle/tags and TestInfo.
hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/TestConcurrentFlushSnapshotFromClient.java Converted to Jupiter tags and lifecycle.
hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/SnapshotTestingUtils.java Migrated JUnit4 Assert usage to Jupiter assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/MobSnapshotTestingUtils.java Migrated assertions to Jupiter.
hbase-server/src/test/java/org/apache/hadoop/hbase/monitoring/TestTaskMonitor.java Migrated monitoring tests to Jupiter tags/assertion style.
hbase-server/src/test/java/org/apache/hadoop/hbase/monitoring/TestMemoryBoundedLogMessageBuffer.java Migrated assertions and categories to Jupiter.
hbase-server/src/test/java/org/apache/hadoop/hbase/http/TestInfoServersACL.java Migrated ACL/info server tests to Jupiter tags and assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/http/TestDebugDumpRedaction.java Migrated debug dump redaction test to Jupiter lifecycle/tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/fs/TestBlockReorderMultiBlocks.java Migrated block reorder tests to Jupiter lifecycle/tags with TestInfo.
hbase-server/src/test/java/org/apache/hadoop/hbase/fs/TestBlockReorderBlockLocation.java Migrated block location reorder tests to Jupiter lifecycle/tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/fs/TestBlockReorder.java Migrated block reorder tests to Jupiter lifecycle/tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/executor/TestExecutorService.java Migrated executor service tests to Jupiter tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/errorhandling/TestTimeoutExceptionInjector.java Migrated error handling tests to Jupiter tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/errorhandling/TestForeignExceptionSerialization.java Migrated serialization tests to Jupiter assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/errorhandling/TestForeignExceptionDispatcher.java Migrated dispatcher tests to Jupiter tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestWALObserver.java Migrated test lifecycle to Jupiter + replaced TestName rule with TestInfo.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionServerCoprocessorExceptionWithRemove.java Migrated categories to tags and assertions to Jupiter.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionServerCoprocessorExceptionWithAbort.java Migrated to Jupiter tags/assertions and updated expected exception testing.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionObserverStacking.java Migrated to Jupiter tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionObserverScannerOpenHook.java Migrated to Jupiter tags + replaced TestName with TestInfo.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionObserverPreFlushAndPreCompact.java Replaced @Test(expected=...) with assertThrows; migrated tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionObserverInterface.java Migrated lifecycle to Jupiter + replaced TestName usage with TestInfo.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionObserverForAddingMutationsFromCoprocessors.java Migrated lifecycle to Jupiter + replaced TestName with TestInfo.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionObserverBypass.java Migrated to Jupiter tags/lifecycle/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionCoprocessorQuotaUsage.java Migrated to Jupiter tags/lifecycle/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestRegionCoprocessorHost.java Migrated to Jupiter and replaced TestName with TestInfo.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestReadOnlyConfiguration.java Migrated to Jupiter tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestPostIncrementAndAppendBeforeWAL.java Migrated to Jupiter lifecycle + replaced TestName with TestInfo.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestOpenTableInCoprocessor.java Migrated to Jupiter tags/lifecycle/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestNegativeMemStoreSizeWithSlowCoprocessor.java Migrated to Jupiter lifecycle/tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMetaTableMetrics.java Migrated to Jupiter lifecycle/tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterObserverToModifyTableSchema.java Migrated to Jupiter lifecycle/tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterObserver.java Migrated to Jupiter lifecycle/tags + replaced TestName with TestInfo.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithRemove.java Migrated to Jupiter lifecycle/tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestMasterCoprocessorExceptionWithAbort.java Migrated to Jupiter lifecycle/tags/assertions and updated expected exception testing.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestIncrementTimeRange.java Migrated to Jupiter lifecycle/tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestIncrementAndAppendWithNullResult.java Migrated to Jupiter lifecycle/tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestCoreRegionServerCoprocessor.java Migrated lifecycle to Jupiter + replaced TestName with TestInfo.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestCoreRegionCoprocessor.java Migrated lifecycle to Jupiter + replaced TestName with TestInfo.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestCoreMasterCoprocessor.java Migrated lifecycle/tags to Jupiter.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestCoprocessorStop.java Migrated to Jupiter lifecycle/tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestCoprocessorShortCircuitRPC.java Migrated to Jupiter lifecycle/tags.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestCoprocessorMetrics.java Migrated to Jupiter lifecycle/tags + replaced TestName with TestInfo.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestCoprocessorInterface.java Migrated to Jupiter tags + replaced TestName with TestInfo.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestCoprocessorHost.java Migrated to Jupiter tags/assertions and replaced expected exceptions with assertThrows.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestCoprocessorConfiguration.java Migrated to Jupiter tags/assertions; replaced ExpectedException rule with assertThrows.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/TestAppendTimeRange.java Migrated to Jupiter lifecycle/tags + replaced TestName with TestInfo.
hbase-server/src/test/java/org/apache/hadoop/hbase/coprocessor/SimpleRegionObserver.java Migrated assertion imports to Jupiter assertions (test-only helper CP).
hbase-server/src/test/java/org/apache/hadoop/hbase/constraint/TestConstraints.java Migrated to Jupiter tags + replaced TestName rule with TestInfo injection.
hbase-server/src/test/java/org/apache/hadoop/hbase/constraint/TestConstraint.java Migrated lifecycle/tags/assertions to Jupiter.
hbase-server/src/test/java/org/apache/hadoop/hbase/codec/TestCellMessageCodec.java Migrated to Jupiter tags/assertions.
hbase-server/src/test/java/org/apache/hadoop/hbase/codec/CodecPerformance.java Migrated assertions to Jupiter.
hbase-server/src/test/java/org/apache/hadoop/hbase/backup/example/TestZooKeeperTableArchiveClient.java Migrated lifecycle/tags/assertions to Jupiter.
hbase-server/src/test/java/org/apache/hadoop/hbase/backup/TestHFileArchiving.java Migrated lifecycle/tags/assertions and updated expected-exception assertions.
Comments suppressed due to low confidence (2)

hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/TestRestoreFlushSnapshotFromClient.java:1

  • This change alters the test classification from MediumTests (JUnit4 Category) to LargeTests (JUnit5 Tag). Since the PR title/description is focused on the JUnit5 migration, please confirm this reclassification is intentional; otherwise, keep the equivalent tag(s) to preserve test-suite selection behavior (e.g., still tagging as MediumTests).
    hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/TestRestoreFlushSnapshotFromClient.java:1
  • This change alters the test classification from MediumTests (JUnit4 Category) to LargeTests (JUnit5 Tag). Since the PR title/description is focused on the JUnit5 migration, please confirm this reclassification is intentional; otherwise, keep the equivalent tag(s) to preserve test-suite selection behavior (e.g., still tagging as MediumTests).

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport This PR is a back port of some issue or issues already committed to master

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants