RAKUS Developers Blog | ラクス エンジニアブログ

株式会社ラクスのITエンジニアによる技術ブログです。

JUnit4からJUnit5への移行メモ、変更箇所をまとめてみた

先日、JUnit4からJUnit5への移行作業を実施しました。
移行する際に色々とコードの変更が必要なのですが、作業しながら「パッケージと名前の変更点が一括でまとまってる記事があったらな~」と思ったのでこの記事でまとめることにしました。

アノテーション

変更されたもの

JUnit4 JUnit5
org.junit.Before org.junit.jupiter.api.BeforeEach
org.junit.After org.junit.jupiter.api.AfterEach
org.junit.BeforeClass org.junit.jupiter.api.BeforeAll
org.junit.AfterClass org.junit.jupiter.api.AfterAll
org.junit.Test org.junit.jupiter.api.Test

削除されたもの

JUnit4 JUnit5
org.junit.runners.Enclosed org.junit.jupiter.api.Nested
org.junit.Ignore org.junit.jupiter.api.Disabled
org.junit.experimental.categories.Category org.junit.jupiter.api.Tag
org.junit.runner.Runwith org.junit.jupiter.api.extension.ExtendWith
org.junit.Rule org.junit.jupiter.api.extension.ExtendWith
org.junit.ClassRule org.junit.jupiter.api.extension.ExtendWith

↓パラメータ化テスト (少し特殊なので別に記載)

JUnit4 JUnit5
アノテーション(Runwithの引数に渡す) アノテーション
org.junit.runners.Parameterized org.junit.jupiter.params.ParameterizedTest
パラメータ指定
import org.junit.runners.Parameterized.Parameters org.junit.jupiter.params.provider.ValueSource
org.junit.jupiter.params.provider.CsvSource
etc...

アサート

変更されたもの

JUnit4 JUnit5
org.junit.Assert.assertTrue org.junit.jupiter.api.Assertions.assertTrue
org.junit.Assert.assertFalse org.junit.jupiter.api.Assertions.assertFalse
org.junit.Assert.assertEquals org.junit.jupiter.api.Assertions.assertEquals
org.junit.Assert.assertArrayEquals org.junit.jupiter.api.Assertions.assertArrayEquals
org.junit.Assert.assertNull org.junit.jupiter.api.Assertions.assertNull
org.junit.Assert.fail org.junit.jupiter.api.Assertions.fail

削除されたもの

JUnit4 JUnit5
org.junit.Assert.assertThat サードパーティー製のライブラリを使う
assertJ
static org.assertj.core.api.Assertions.assertThat
hamcrest
org.hamcrest.MatcherAssert.assertThat
Truth
com.google.common.truth.Truth.assertThat

おわりに

変更点盛りだくさんでした。
本記事がこれから移行する方の助けになれば幸いです。

執筆 & 移行の際の参考サイト


エンジニア中途採用サイト
ラクスでは、エンジニア・デザイナーの中途採用を積極的に行っております!
ご興味ありましたら是非ご確認をお願いします。
20210916153018
https://career-recruit.rakus.co.jp/career_engineer/

カジュアル面談お申込みフォーム
どの職種に応募すれば良いかわからないという方は、カジュアル面談も随時行っております。
以下フォームよりお申込みください。
rakus.hubspotpagebuilder.com

ラクスDevelopers登録フォーム
20220701175429
https://career-recruit.rakus.co.jp/career_engineer/form_rakusdev/

イベント情報
会社の雰囲気を知りたい方は、毎週開催しているイベントにご参加ください!

◆TECH PLAY
techplay.jp

◆connpass
rakus.connpass.com

Copyright © RAKUS Co., Ltd. All rights reserved.