ホチキス先生の「プログラマーと呼ばれたい」

InfoPath & SQL Server !

Microsoft TechEd 2010 レポート – Day 2 – 1 – T6-302「Visual Studio 2010の新しいテスト機能によるソフトウエア品質の向上」

leave a comment »

Visual Studio 2010はテスト機能が充実している。数多くの新機能をもつVisual Studio 2010のテスト機能について、マイクロソフトのエバンジェリスト近藤和彦氏がセッションを行った。

IntelliTraceはデバッグの履歴を保持し、デバッグの途中で過去の状態を確認することができるものだ。今日的なソフトウエア開発では、作成したプログラムのテストを開発者だけでなく他のテスト実行者によって行われることもある。このとき、開発者ではないテスト実行者が行ったテスト結果も、統一的に管理してみることができるものだ。

アプリケーションを作ってテストをするとき、変数などの値を見たいことがある。あるアプリケーションのテストをし、何らかのエラーがおこったとき、もう一度最初から実行しなおし、気になる変数の値を参照したいと思ったとする。このとき調べたい変数がアプリケーション内部の固定された変数であればいいが、データベースの値であって、しかも実行のたびに変化するようなデータであったときには、再度実行した場合でも最初の結果と同じ結果を得ることはできない。このようなとき、IntelliTraceでは実行ステップを順番に元に戻りながら値を確認することができる。

IntelliTraceでは、ツールのオプションで収集する情報を取捨選択することができる。ただし収集する情報が多ければ、記録されたデータサイズも大きくなるので、データサイズには注意が必要である。

次に「コード化されたUIテスト」がある。「テスト」メニューの「新しいテスト」で「コード化されたUIテスト」を実行すると、画面の右下にいくつかのコントロールのアイコンが表示される。このアイコンのうち「レコーディング」のアイコンをクリックすると、アプリケーションの動作を記録することができる。これを「記録されたステップの表示」で見ることができ、ビルドして実行するとUIテストの操作が再現される。「アサーションの追加」オプションを利用すれば、テキストボックスの値などアプリケーション中の特定のコントロールの値が正しいかどうかを決めてテストすることもできる。

これだけでは単にあるテスト操作の記録にすぎないが、自動生成したパラメーターを変更し、テスト条件を変えて数多くのテストケースのテストを自動実行することもできる。テストしたいパラメーターの値をCSVファイルで作成しておき、データ接続文字列の定義をして異なる条件でのテストの自動実行を実現できる。

Visual Studio LabManagement 2010は、テスト環境の仮想化と一元管理を実現するサーバーだ。ソフトウエアのテスト環境は、個々のテストマシンの状態によって結果が異なる場合がある。あるテスト環境でエラーが報告されても、別のテスト環境ではエラーが再現されないこともあるだろう。開発者とテスト担当者が異なるとき、これらの問題は深刻である。そこで複数のテスト担当者がいても同じテスト結果が得られるように、テスト環境を仮想化し一元管理することに意味があり、問題の再現性が向上する。またOSのバージョン違いなど様々なテスト環境を作ってテストすることもやりやすい。具体的にはバーチャルマシンを作り、組み合わすことでテスト環境を構築する。バーチャルマシンはいつでも復元することができるので、常にクリーンな環境でテストを繰り返すことができ、問題発生の瞬間のレジストリの値などスナップショットを記録することもできる。

Microsoft Test Manager 2010は、テストの計画、実施、追跡などのテストプロセスを包括的に管理するものだ。まずテスト機能としてテストの計画を立て、それぞれのテストに対して具体的なテスト項目を記述していくことでテストプロセスを組み立てていく。できたテストプロセスは「夜間バッチ」によって全体テストを自動で行うことができる。もっとも上位にあるのはTeam Foundation Serverで、その下にチームプロジェクト、テスト計画、テストスイート、テスト計画、と構築していく。「構成の定義」でテストしようとするマシン環境のハードウエアとOS、ブラウザなどソフトウエアの構成を定義する。また具体的なテストケースを「テスト設定の定義」で作成する。この「構成の定義」と「テスト設定の定義」をマトリクスで組み合わせ、さまざまなケースに対応するテストを実行させる。テストケースやテストスイートをグループ化してまとめてテストをしたり、テストケースに優先順位を割り当てる、手動テストの担当者を割り当てる、などのマネジメントもできる。

Microsoft TechEd 2010 Japan 公式サイト
http://www.microsoft.com/japan/teched/2010/

Written by Yoshio Matsumoto

2010年8月26日 @ 11:50 PM

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。