JasmineでJavaScriptのテスト書いたりJava8のラムダに思いを馳せていたらなんとなく思いつきました。 ラムダにインスタンスイニシャライザを組み合わせたらこんな感じでテストが書けそうです。 package app; public class CalcSpec extends Specs {{ it("1 足す 2 は 3", () -> { expect(() -> 1 + 2).toEqual(3); }); it("1 割る 0 は例外", () -> { expect(() -> 1 / 0).toThrow(ArithmeticException.class); }); }} うむ、Jasmineぽい。 まあ実はBDDぽいとかよく分かっていませんが。 itメソッドを呼ぶと第一引数のテスト名をkey、第二引数のRunnableのようなオブジェクトをvalueとするマップ