2018年9月11日火曜日

spring-boot-maven-pluginのboot:runで起動引数を指定する

spring-boot-maven-pluginのboot:run時に起動引数を指定する方法です。

起動引数は、システムプロパティのspring-boot.run.argumentsを使用して指定します。
mvn spring-boot:run -Dspring-boot.run.arguments=[引数]

2018年9月6日木曜日

[AssertJ]JUnit5拡張のsoft assertions

AssertJ 3.11.0から追加されたJUnit5拡張のsoft assertionsを試してみる。

AssertJを依存ライブラリに追加する

バージョンは、3.11.0以降を指定する必要があります。
testCompile 'org.assertj:assertj-core:3.11.1'

soft assertionsを使ってみる

実装すればいいことは、以下の2点ですね。
org.assertj.core.api.SoftAssertions.SoftAssertionsのときは、assertAllを呼び出す必要があったけどそれが不要になりますね。
  • JUnitJupiterSoftAssertionsをフィールドに定義して@RegisterExtensionを設定する
  • JUnitJupiterSoftAssertionsのassertThatを使ってアサーションを行う

public class SampleTest {
    
    @RegisterExtension
    public final JUnitJupiterSoftAssertions softly = new JUnitJupiterSoftAssertions();

    @Test
    void test() {
        softly.assertThat(5)
              .isEqualTo(1);
        softly.assertThat("hoge")
              .isEqualTo("fuga");
    }
}

実行結果

複数箇所でアサーションに失敗した場合でも、それぞれの結果が表示されますね。
Expected :1
Actual   :5
 <Click to see difference>

Expected :fuga
Actual   :hoge
 <Click to see difference>