Grailsのテストについて,いくつかまとめておく。Grailsが標準で用意しているテスト環境は単体テスト(unit test)と結合テスト(integration test)の2つあって,それぞれこんな違いがある。 単体テスト(unit test) コンテナ外テストなので,幾つか制約事項あり。 たとえば,GORMのダイナミックメソッドは,モックで処理する。 結合テスト(integration test) コンテナ内テスト(正しくはJettyを起動しているワケではないみたい)。 GORMの制限はないし,データベースも使える。 ...ってな違いは実はどうでもよくて,どっちも「grails test-app」で実行するんだけど,これの使い勝手がすこぶる悪く,かつ遅い。そのためテストのリズムが良くない。せっかくテスト環境持ってたり,モック作れたり,TDDを行うには十分な条件を持っているのだけれど
![2009-06-15 - marsのメモ - テストまわりで残念なことがあるけど,Grailsはやればできる子](https://cdn-ak-scissors.b.st-hatena.com/image/square/ecd3d66b83d3ea207a1b2f47f8cb1b46bc1a02e1/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fm%2Fmasanobuimai%2F20090615%2F20090615221109.png)