LoginSignup
4
4

More than 3 years have passed since last update.

JavaのAssertionとは?まとめ。

Last updated at Posted at 2020-01-13

概要

JavaのIntegrationTestをやったので、忘れないようアウトプットします。

目次

  1. Javaのassert文とは
  2. Assert Classのメソッドたち、JUnitの説明

1. Javaのassert文とは

Javaのassert文とは

Oracle公式ドキュメントによると

アサーションとは、プログラムに関する前提をテストできるようにするJavaプログラミング言語の文です。

Assertionのライフサイクル

アサーションは常にBoolean型となっており、trueを前提としてテストをしていきます。
falseの場合、AssertionErrorをthrowします。

カバレッジ

また、機能をテストでどの程度カバーできているかをカバレッジといいます。
カバレッジの質が高いほどバグが減ります。

2. Assert Classのメソッドたち、JUnitの説明

assertEqual()

期待される結果と実際の結果が同じかどうか判定

EqualIntegrationTest.java
/**
 * expected: 期待値
 * actual: 実際の値
 * message: メッセージ(期待値と実際の値が一致しない場合表示)
 */ 
Assert.assertEqual(expected, actual);
Assert.assertEqual(message, expected, actual);

assertTrue()

与えられた条件が正しいかどうか判定する

TrueIntegrationTest.java
/**
 * actual: 実際の値
 * message: メッセージ(与えられた条件が正しくない場合表示)
 */ 
Assert.assertTrue(expected > 1);
Assert.assertTrue(message, expected > 1);

assertNotNull()

与えられたObjectがnullでないかどうか判定する

NotNullIntegrationTest.java
/**
 * object: 期待値
 * message: メッセージ(objectがnullの場合表示)
 */
Assert.assertNotNull(object);
Assert.assertNotNull(message, object);

assertNull()

与えられたObjectがnullか判定する

NullIntegrationTest.java
/**
 * object: 期待値
 * message: メッセージ(objectがnullではない場合表示)
 */ 
Assert.assertNull(object);
Assert.assertNull(message, object);

assertSame()

与えられた2つのObjectが同じObjectを参照しているか判定する

SameIntegrationTest.java
/**
 * expectedObject: 期待値
 * actualObject: 実際値
 * message: メッセージ(objectがnullではない場合表示)
 */ 
Assert.assertSame(expectedObject, actualObject);
Assert.assertSame(message, expectedObject, actualObject);

assertThat() 

基本的に比較だが、その使用方法は多岐に渡る 詳細

参考資料

4
4
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4