ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

NAgileコミュのASP.NET 2.0でのテスト方法について

  • mixiチェック
  • このエントリーをはてなブックマークに追加
ASP.NET2.0での開発時、
皆様、テストコードってどう書かれているのでしょうか?

WebApp配下じゃないものについては、通常通りで問題ないですが、CodeBehindとか、App_Code配下はどうしたらよいかピンと来ないです。

この辺り読むと良いヨ!とか
こういう風に考えたらどうだろう?みたいな
ナイスアドバイスがあらば教えて下さい。

ちなみに少し前のPJでは単体テスト要員が既に用意されてる状況だったので、コンポーネントとしてDLLに分離されてるものだけテストコード書いて、画面周りはテスターへ。
という体制でした。

コメント(3)

anduです。どうもです。

私の場合、Webページの自動テストはやりません。
たしかにNUnitAspとかあるにはあるのですが、これを使うよりも、画面の場合は目で確認した方が確実かつ手っ取り早いと思います。

その代わりに、コードビハインドとかにはなるべくロジックを書かないようにしてしています。この辺りはModel-View-Presenterパターンとかが参考になると思います。

例えば、顧客一覧画面の場合、
・V:CustomerListView
(Page, ICustomerListViewを継承し、CustomerListViewPresenterへの参照を持つ)
・P:CustomerListViewPresenter
(ICustomerListViewとCustomerServiceへの参照を持つ)
・M:CustomerService
と分けて作成し、PとMに関しては普通にNUnitでテストできます。Vは画面表示のためのコードしか書きません。

参考に、簡単なフローを。

CustomerListView.表示ボタンクリック()

CustomerListViewPresenter.顧客一覧表示()
  ↓
  :顧客リスト=CustomerService.顧客一覧取得()
  ↓   
  ICustomerListView.顧客一覧更新(:顧客リスト)
くろです。
私もanduさんと同じですね。
できるだけWebページにロジックをのっけないように注意しているぐらいです。
UIのテストはコストパフォーマンスが低いので、実プロジェクトで行うのは難しいと思います。

後はECサイトなどのインターネットに公開するWebアプリの場合は、負荷テストが重要になるのでVSTSのWebテスト&ロードテストを組み合わせて(実際にはまだ使ったこと無いけど)やるぐらいでしょうか。
ありがとうございます!

aspx.csにロジックのせすぎなんですね、やっぱり。
テストできることがあまりに少なくて困ってました。
とりあえず、今カスタムコントロールとユーザーコントロールの作成に勤しんでいるので、
落ち着いたら、Webページにロジックをのせないようなリファクタ頑張ってみます。

Model-View-Presenterパターンはちょっと難しいので、
勉強して出直してきます。
なにか、オススメの本とかあらば、教えていただければ幸いです。

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

NAgile 更新情報

NAgileのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。