Serviceのテストってどうやるんだ?
最近のSAStrutsはLogicやDaoをまとめたEntityごとに存在するServiceを用意するのが推奨?されているみたいですね。
ところで、この方針でServiceを作った場合のテストってどうするんでしょう?
試行錯誤したテストクラス
public class HogeServiceTest extends S2TestCase{ @Override protected void setUp() throws Exception { include("app.dicon"); } public void testFindAll() { HogeService hogeService = new HogeService(); List<Hoge> hogeList = hogeService.findAll(); //後はHogeリストの中身を表示する } }
すると、Sesarで用意されているS2AbstractServiceの下記の場所でjdbcManagerがnullでぬるぽが発生してしまいます。
public AutoSelect<T> select() { return jdbcManager.from(entityClass); }
当然、テストクラスをこうすればきちんとDBからデータが取り出せるが、Serviceのテストになっていない。。
public class HogeServiceTest extends S2TestCase{ @Override protected void setUp() throws Exception { include("app.dicon"); } public void testFindAll() { List<Hoge> hogeList = jdbcManager.from(Hoge.class).getResultList(); //後はHogeリストの中身を表示する } }
Serviceクラスのテストってどうやるんでしょう??
-
前の記事
2008.08.02
-
次の記事
HttpSessionの中身をJSPで取り出すには? 2008.08.10