私たちのサービスクラスの1つに、DAOの結果を返すだけのメソッドがたくさんあります。
public void acceptRequest(User from, User to) {
rosterDAO.acceptRequest(from, to);
}
このメソッドの単体テストは次のようになります
private final RosterDAO rosterDAO = context.mock(RosterDAO.class);
...
public void testAcceptRequest() {
context.checking(new Expectations() {{
oneOf (rosterDAO).acceptRequest(from, to);
will (returnValue(1));
}
});
今、私にはこのテストは完全に無意味に見えます。それが行う唯一のことは、メソッドが別のメソッドを呼び出すことをテストすることです。戻り値はすでにDAOテストで十分にカバーされていますが、これらのテストを維持するための努力を正当化するのに十分なことが行われていないと思うので、これらのテストを削除したいと思います。
したがって、100%のカバレッジを主張するTDDの達人は、次のようになります。
このテストがプロジェクトにどのような価値をもたらすと思いますか?
どうすればもっと上手に書くことができますか?