Specs2 2.0 で手抜きテストを行う
Specs2 2.0 使ってますか?s2記法という新しい書き方が個人的に大ヒットだったので、それに纏わる記事を書いてみます。今回は、手抜きな使い方編です
s2記法とは
- A++ [Eric Torreborre's Blog]: Specs2 2.0 - Interpolated
- Specs2のString Interpolationを使った新しいDSL - scalaとか・・・
package hoge
import org.specs2._
class HogeSpec extends Specification {
def is = s2"""
ほげー $a
"""
val hoge = "ほげー"
def a = {
hoge === "ほげー"
}
}
こんな感じの書き方です。
手抜きなテストのやり方
僕はテストドリブンで書きつつも、仕様書・ユニットテストとしてのテストではなく、コードを書き始める為のエンジンとしてテストを書きたい場合、テストを半ば書き捨てにしてでもがーっと書き始めるというやり方をする事があります。それにあった書き方が s2記法では可能です。
def is = s2"""
${hoge === "ほげー"}
${1 === 1}
${true must beTrue}
"""
val hoge = "ほげー"
こういうお手軽な書き方でテストが書けてしまいます。BDDにこだわらずにがーっと書きたい時にはこういう書き方するのもありなんじゃないでしょうか?