Assert
のクラスメソッドは、参考になるものよりもむしろ混乱しています。私はMSのMSTestメソッドが私に比較を後ろ向きに書くことを期待している(または必要としている)のは特に迷惑だと思う。 e。定数/期待値が最初に、変数/実際値が2番目になります。これは自然言語とは矛盾し、したがってコード内の一般的な比較のための多くのプログラミングガイドラインに当てはまります。なぜAssertクラスメソッドを使うべきですか?
これに代えてそう:これで何が悪い
Assert.AreEqual(5, value, "Value is not correct.");
、より正常にテスト命令を探して:
if (value != 5) Assert.Fail("Value is not correct.");
これは、すべてのコードは次のようになります。それは、すべてのプログラマーの目が本当に素早く見て理解するように訓練されたものです。そして、他のアサーションメソッドは、通常のコードで簡単に書くことができます。
C#6のusing static
では、Assert.
の部分を離れることさえできます。
WebおよびAssertクラスのドキュメントでこれに関する推論が見つかりませんでした。
あなたは[流暢な主張](http://www.fluentassertions.com/)を知っていますか? –
NUnit、XUnit、または他のユニットテストフレームワークに切り替えるだけです。個人的に私はMSTestの構文がうまくいくことがわかり、最初の10回のテストを慣れてからすべて甘いものにします。 – zaitsman
@RenéVogtそれを知らなかったし、私はカスタムメソッドで言語機能を破棄することに何の意味も見ません。私にはわかりにくく、勉強するには余分なものがあります。 – ygoe