概要
JavaのIntegrationTestをやったので、忘れないようアウトプットします。
#目次
- Javaのassert文とは
- 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()
基本的に比較だが、その使用方法は多岐に渡る 詳細
#参考資料