troushoo

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

  1. --/--/--(--) --:--:--|
  2. スポンサー広告

Visual StudioでUIテストの自動化(1)

Visual Studio 2010を利用すると、UIテストを自動化することができます。これにより、手作業では時間がかかってしょうがないテストを自動化することができます。
今回は、100回ボタンをクリックすると例外が発生するというWebサイトを利用して、人が100回もクリックしてテストすることなくUIテストを行う方法を紹介します。

今回利用するWebサイト
以下のようなサイトで、"100回クリックで例外"のボタンを100回押すと例外が発生するサイトを利用します。

*コードは後述しますが、Visual StudioのUIテストの自動化には、テストされる側のソースコードは必要ありません。

UIテストの自動化
1. Visual Studioを開き、新規作成→プロジェクトからテスト→テスト プロジェクトを選択します。

2. 今回はUIテストなので、UnitTest1.csを削除して"コード化されたUIテスト"を追加します。


3. 以下のようなダイアログが出てきます。
新規なので、"操作の記録、UIマップの差編集、またはアサーションの追加"を選択します。

4. デスクトップ右下に以下のようなものが表示されます。

5. いちばん左の赤丸をクリックするとUIのステップが記録されます。

6. 赤丸が二重線に変わります。

7. 今回はボタンを2回クリックしてみます。ブラウザに”現在記録中”と表示され、記録中であることがわかります。
70
8. その後二重線を押して記録を終了します。
9. 一番右のボタンをクリックし、記録したものをプログラムで使用するためのメソッド名を記入します。

10. ×を押してレコーディングツールを終了します。
11. Visual StudioでUIMap.Designer.csに行くと、9で記入したメソッドがあり、そのコードも確認できます。

12. 今回は100回のクリックを再現したいので、for文を追加し、100回以上クリックされるようにします。

13. Ctrl+F5でUIテストを実行します。
実際にクリックするので、100回クリックする分の時間がかかります。
14. 例外が発生することが確認できます。

15. Visual Studioにはテストに失敗した部分がわかります。

補足
1. Visual Studio 2010のエディションにPremium もしくは Ultimateが必要です。
2. UIの挙動のレコーディング中に左から二つ目のボタンをクリックすると、現在のレコーディング状態を確認でき、操作の削除も可能です。

3. テスト自動化をサポートしている状況です。(Tech·Ed 2011 North Americaより)

4. MSDNサブスクリプションで利用可能はVisual Studio Feature Pack 2をインストールすると以下が可能になります。
 1. Firefox, Silverlight 4もテスト自動化可能
 2. Coded UI Test Editor
   Codedd UI Test EditorはレコードしたUIの入力を削除したり、待ちを入力したりといったことが可能になります。
     
5. 今回のサンプルWebアプリを作成するには、Visual Studioを開き新規作成→プロジェクトよりWeb→ASP.NET Web アプリケーションを作成し、デザインよりボタンを追加します。
ボタンをダブルクリックして以下のコードを記入します。

static int i = 0;
protected void Button1_Click(object sender, EventArgs e)
{
    if (i >= 100)
    {
        i = i / (i - 100);
    }
    else
    {
        i++;
    }
 
}

  1. 2011/11/27(日) 07:05:00|
  2. Visual Studio
  3. | トラックバック:0
  4. | コメント:0
<<Visual StudioでUIテストの自動化(2) | ホーム | ADKでパフォーマンス問題調査>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://troushoo.blog.fc2.com/tb.php/16-0be02f46
この記事にトラックバックする(FC2ブログユーザー)

スポンサーリンク

最新記事

月別アーカイブ

カテゴリ

ツール (92)
ネットワーク (76)
Visual Studio (56)
SOS・Psscor2/Psscor4 (25)
WinDbg (25)
Linux (24)
Azure (17)
Tips (20)
英語 (1)
About Me (1)
未分類 (0)

全記事表示リンク

全ての記事を表示する

検索フォーム

RSSリンクの表示

リンク

このブログをリンクに追加する

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。