
説明/参照:
Explanation:
ボックス1:いいえ
7行目は、名前がContosoという文字列であるため、正常に実行されます。
ボックス2:はい
ブール式net | = 0がfalse(500-500は0)と評価されるため、16行目のアサーションは失敗します。
注:アサーションは、比較された条件の真理の仮定を検証します。アサーションは単体テストの中心です。 Assertクラスは、真理の仮定を検証するための多くの静的メソッドを提供します。検証されている条件が真でない場合、アサーションは失敗します。 Assertクラスは、失敗を通知するためにAssertFailedExceptionをスローします。
ボックス3:いいえ
22行目のブール式、balance> = 0.0fは、21行目でbalanceが0.0fに設定されているため、Contract.ensuresが事後条件であるため、0> = 0.0f(true)と評価されます。
注:Contract.Ensuresメソッドは、囲むメソッドまたはプロパティの事後条件を指定します。
参考文献:https://msdn.microsoft.com/en-us/library/
microsoft.visualstudio.testtools.unittesting.assert.aspx
http://stackoverflow.com/questions/7052640/how-does-contract-ensures-work