複数のアプローチがRhinoのモックを使用した場合、あなたのユニットテストを書くために存在する理想的な、最も摩擦は何Rhino Mockで使用するのに最適なスタイル/構文は何ですか?
- 標準構文
- 記録/再生構文
- 流暢構文
方法?
複数のアプローチがRhinoのモックを使用した場合、あなたのユニットテストを書くために存在する理想的な、最も摩擦は何Rhino Mockで使用するのに最適なスタイル/構文は何ですか?
方法?
興味深い質問!私自身の好みは、反射ベースの構文(私があなたが標準構文で意味するもの)のためのものです。私はこれが最も摩擦のないものであると主張します。余分なコードは追加されません。つまり、適切に実装されているかのように、インターフェイス上で直接スタブを参照します。
私はFluent構文も非常に気に入っていますが、これはかなり面倒です。レコード/リプレイの構文は、Fluentの構文(それほどそうではないと思われるが)でも煩雑であるが、少なくとも私には直感的ではない。私はNMock2しか使用していないので、Record/Replayのシンタックスは私にとってはちょっと寂しいですが、Fluentの構文はよく知られています。
しかし、this postが示唆しているように、あなたの検証/アサーションからあなたの期待を分離したい場合は、Fluent構文を選択する必要があります。スタイルと個人的な好みの問題は、最終的には:-)
アレンジ、アサート、アサート。私はMoQを使い、Arrange、Assert、Act、Verifyを好む。私は行動する前にすべてをセットアップするのが好きです。
.NET 2.0では、レコード/再生モデルをお勧めします。私たちはあなたの検証とあなたの期待とを明確に区別しているので、これが好きです。
using(mocks.Record())
{
Expect.Call(foo.Bar());
}
using(mocks.Playback())
{
MakeItAllHappen();
}
.NET 3.5とC#3を使用している場合は、流暢な構文をお勧めします。