[わんくま勉強会フォロー] Coded UI Test で対象アプリを自動起動する方法
昨日のわんくま勉強会名古屋で、 VS2010 の 「コード化された UI テスト」 を紹介しました。 実際に WinForm アプリに対する操作をレコーダーで記録して、 再生とコントロールの検証をするところをご覧に入れました。 しかしそのままでは、 いちいち先に手動でアプリを起動してやる必要があります。
このとき自動生成されたテストコード (の、 一番上層部) は、 こんなふうでした。[TestMethod]
public void CodedUITestMethod1()
{
// このテストのコードを生成するには、ショートカット メニューの [コード化された UI テストのコードの生成] をクリックし、メニュー項目の 1 つをクリックします。
this.UIMap.RecordedMethod1();
this.UIMap.AssertMethod1();
}
その次 (スライド (PDF) では 11枚目) に、 「テスト開始時に、最新ビルドの画面を自動的に表示させるには、工夫が必要」 とだけ喋って、 時間の都合でコードをお見せすることはできませんでした。
たとえばこんなふうにして、 テストコードの中でプロセスを起動/終了してやります。[TestMethod]
public void CodedUITestMethod1()
{
System.Diagnostics.Process p = System.Diagnostics.Process.Start(@"{プロジェクトのパス}\bin\Debug\WinForm1.exe");
p.WaitForInputIdle(); //入力可能状態になるまで待機
this.UIMap.RecordedMethod1();
this.UIMap.AssertMethod1();
p.CloseMainWindow(); //メイン Window を閉じて、 アプリ終了
}
※ そのほか、 UI スレッドを起こして、 そこで直接 Form を開いてもいけるとは思いますが、 試していません。
| 固定リンク
「プログラミング」カテゴリの記事
- 【.NET / Win8.1 ストアアプリ】 HttpClient で TLS 1.1 / 1.2 に対応するには(2018.06.17)
- 【VS2017 15.7pv2】 XAML のランタイム ツールに 「ヒートマップ」 が増えた(2018.03.28)
- 【.NET Core】 プロジェクトを作ると 「project.assets.json が見つかりません」 エラー(2018.02.10)
- 【#UWP】 ビットマップの表示色を変える (Win2D.uwp 経由で Direct2D を使う)(2017.08.23)
- 【#UWP】 CompactOverlay モード: Picture in Picture というか、「最前面に表示」するウィンドウを作る(2017.08.16)
「-プログラミング ( わんくま )」カテゴリの記事
- [わんくま名古屋] 第21回: Metro サンプルコード解説 (1/3)(2012.04.15)
- [わんくま名古屋] 第21回は 4月 14日 - Windows 8 Metro をやるよ~♪(2012.04.12)
- [わんくま東京] 第59回の資料を公開しました(2011.06.02)
- [わんくま東京] 第59回は 5月 28日 - 名古屋から侵略します♪(2011.05.23)
- [わんくま名古屋] 第17回は 4月 9日 - TDD ネタで喋ります(2011.04.03)
この記事へのコメントは終了しました。
コメント