JavaでのJUnitテストケース:オールインワンの詳細を備えたシンプルなJUnit 5.7.1 HelloWorldチュートリアル

公開: 2019-10-30
java-junit-example

JUnitとは何ですか?

JUnitは、繰り返し可能なテストを作成して実行するための、シンプルで強力なオープンソースフレームワークです。 JUnitテストケースが大好きです。 Javaプロジェクトの開発中、私はコードカバレッジのためにJUnitを広く使用しています。 これは、ユニットテストフレームワーク用のxUnitアーキテクチャのインスタンスです。

JUnitの機能は次のとおりです。

  1. 期待される結果をテストするためのアサーション
  2. 共通のテストデータを共有するためのテストフィクスチャ
  3. テストを実行するためのテストランナー

このチュートリアルでは、ポイント1と3について説明します。プロジェクトには、以下のMaven依存関係が必要です。

コードを書き始めましょう。

ステップ1

プロジェクトCrunchifyJunitTestを作成し、パッケージcom.crunchify.junitを指定します。 クイックリファレンス用のパッケージ構造を次に示します。

JUnitプロジェクトのEclipse構造をCrunchifyします

ステップ2

CrunchifyJunitTest =>新しいクラス=> CrunchifyJunitTest.javaを右クリックします

ステップ-3

@Testと入力すると、Eclipseはorg.junit.Test依存関係を提案し、自動的に追加します。

Eclipse TestMavenの依存関係

ステップ-4

JUnitテストをテストするには

  • クラスを右クリック
  • [実行]をクリックします
  • JUnit Testをクリックします

このようなものが表示されるはずです。

JUnitテストが成功しました

ステップ-5

メソッドの期待値パラメーターを30 => 300およびHelloWorld Hello World => Hello -- Worldから変更して、もう一度テストしてみてください。

JUnitテストの失敗-Crunchifyのヒント

ステップ-6

次に、 via other javaて同じテストケースを実行しましょう。 CrunchifyRunnerJUnit.java作成します

ステップ-7

CrunchifyRunnerJUnit.javaJava Applicationとして実行します。

ステップ-8

最初の1st code (正しい期待されるパラメーター)の場合、次のような出力が表示されます。

ステップ-9

2nd code (予期されたパラメーターが正しくない)の場合、次のように表示されます。

そして、あなたはすべて準備ができています。 このコードの実行で問題が発生した場合はお知らせください。

CrunchifyによるJUnitチュートリアル

JUnitテストケースで使用可能なアノテーション:

注釈

説明

@Test public void method() アノテーション@Testは、メソッドがテストメソッドであることを示します。
@Before public void method() 各テストの前にメソッドを実行します。 このメソッドは、テスト環境を準備できます(たとえば、入力データの読み取り、クラスの初期化)。
@public void method()の後各テストの後にメソッドを実行します。 このメソッドは、テスト環境をクリーンアップできます(たとえば、一時データの削除、デフォルトの復元)。
@BeforeClass public void method() すべてのテストを開始する前に、メソッドを1回実行します。 これは、データベースへの接続など、時間のかかるアクティビティを実行するために使用できます。
@AfterClass public void method() すべてのテストが終了した後、メソッドを1回実行します。 これは、データベースから切断するなどのクリーンアップアクティビティを実行するために使用できます。
@無視テストメソッドを無視します。 これは、基になるコードが変更され、テストケースがまだ適合されていない場合に役立ちます。 または、このテストの実行時間が長すぎて含めることができない場合。
@Test(expected = Exception.class) メソッドが指定された例外をスローしない場合、失敗します。
@Test(timeout = 100) メソッドに100ミリ秒以上かかる場合、失敗します。

利用可能なアサートテスト方法:

声明

説明

fail(String) メソッドを失敗させます。 コードの特定の部分に到達していないことを確認するために使用される場合があります。 または、テストコードを実装する前にテストに失敗すること。
assertTrue(true)/ assertTrue(false) 常にtrue / falseになります。 テストがまだ実装されていない場合は、テスト結果を事前定義するために使用できます。
assertTrue([メッセージ]、ブール条件) ブール条件が真であることを確認します。
assertsEquals([文字列メッセージ]、期待、実際) 2つの値が同じであることをテストします。 注:配列の場合、配列の内容ではなく参照がチェックされます。
assertsEquals([文字列メッセージ]、期待される、実際の、許容範囲) floatまたはdoubleの値が一致することをテストします。 公差は、同じでなければならない小数点以下の桁数です。
assertNull([メッセージ]、オブジェクト) オブジェクトがnullであることを確認します。
assertNotNull([メッセージ]、オブジェクト) オブジェクトがnullでないことを確認します。
assertSame([String]、expected、actual) 両方の変数が同じオブジェクトを参照していることを確認します。
assertNotSame([String]、expected、actual) 両方の変数が異なるオブジェクトを参照していることを確認します。