読者です 読者をやめる 読者になる 読者になる

simudaru's blog

Python, Rなどのメモを残していこうと思います。  よろしくお願いいたします。

【bash】 UnitTest

シェルでのユニットテストにはshunit2が使えるらしい。

インストールはtarを解凍して好きな場所に置くだけ

wget https://shunit2.googlecode.com/files/shunit2-2.1.6.tgz
tar zvxf shunit2-2.1.6.tgz


testで始まる関数を作る。
assertEqualsやassertTrueなどが使える。
最後にshunit2をインクルードする。

test0arg(){
  res=`sh ../args.sh 2>&1`
  assertEquals "USAGE: args.sh arg1" "${res}"
}

test1arg(){
  res=`sh ../args.sh 12ab 2>&1`
  assertEquals "12ab" "${res}"
}

test2arg(){
  res=`sh ../args.sh 12 ab 2>&1`
  assertEquals "USAGE: args.sh arg1" "${res}"
}

. ~/shunit2-2.1.6/src/shunit2


試していないが、
setUp/tearDown/oneTimeSetUp
も使えるらしいので、基本的なUnitTestはこれで十分できそう。