Web系開発メモ

Java, JavaScript, CSS, HTML など、Webアプリの記事を中心に書いています。

Javaテスト:AssertJでアサーション

Java単体テストで、AssertJ を使う方法を書いていきます。AssertJ は、テスト結果を評価するためのツールです。

手順1. テストクラスの作成

JUnit を使ってテストケースを作成します。検証の箇所で、AssertJ を使っています。

gsjt/src/test/java/gsjt/AssertjTest.java

package gsjt;

import static org.assertj.core.api.Assertions.*;
import org.junit.Test;

public class AssertjTest {

    @Test public void test() {
        
        // 準備(≒ given)
        int a = 1;
        
        // 実行(≒ when)
        int result = a + a;
        
        // 検証(≒ then)
        // 結果 result が、期待値 2 と等しいこと。
        assertThat(result).isEqualTo(2);
    }
}

手順2. クラスパスの設定

Gradle だと、ビルドファイルの dependencies に次の内容を追加します。

testCompile 'org.assertj:assertj-core:3.4.1'

テストを実行する場合、JUnit の記事 のビルドファイルを参考にして頂ければ幸いです。

補足. AssertJ の便利な使い方

AssertJ は、IDEEclipse など)のコード補完と相性が良いです。assertThat(...) の後にピリオドを打つと、メソッドの候補が現れます。

code-complete

メソッド名から、処理(表明)の内容が推測できて便利です。

AssertJ が実装しているようなインターフェイスは、「流れるようなインターフェイス(Fluent Interface)」と呼ばれたりします。

参考文献

Quick start - AssertJ