スムーズに機能しているBDDスタイルのSpec Flowテストを書いています! これで、データ注釈の検証が開始されることをテストできるようになりました。フォームからの値が投稿されると UpdateModel が起動されるため、このテストは WatiN ツールを使用して実行する必要があると考えています。
検証が起動していることをどのようにテストしますか?
スムーズに機能しているBDDスタイルのSpec Flowテストを書いています! これで、データ注釈の検証が開始されることをテストできるようになりました。フォームからの値が投稿されると UpdateModel が起動されるため、このテストは WatiN ツールを使用して実行する必要があると考えています。
検証が起動していることをどのようにテストしますか?
これを行うにはいくつかの方法があります。検証をチェックするためにWatiNを使用する必要はありません。SpecFlowを使用してコントローラーメソッドを呼び出し、ModelStateプロパティに問い合わせて、入力した無効なデータから発生すると予想されるエラーをチェックします。
WatiNを使用して、ブラウザに接続し、Find.ByText( "Error Message")メソッドを使用して、特定のエラーテキストが画面に表示されていることを確認することもできます。
まだ読んでいない場合は、この記事を読むことを強くお勧めします。SpecFlow/ WatiNとBDDを使い始めるときに、私を大いに助けてくれました:http: //msdn.microsoft.com/en-us/magazine/gg490346.aspx
お役に立てば幸いです。
それらを無効なデータでテストすることにより...(および有効なデータ)
モデルに注釈が付けられている場合は、値を発射するだけで、次のようなシナリオを書くことができます
Scenario: Adding an invalid user
GIVEN I am in the add user page
AND I have not filled in the name
WHEN I Add
THEN I should see the error defined in my annotation
注釈のテストの詳細については、http://bradwilson.typepad.com/blog/2009/04/dataannotations-and-aspnet-mvc.htmlを参照 してください。この場合、外部からテストしていることを忘れないでください。