Visual Studio Ultimate 2012 でコード化された ui テストを使用して my-app のテストを作成しようとしています。my -app で別のアプリを実行します (「別のアプリ」の実行中に cmd ウィンドウが開きます)。この「別のアプリ」の実行が完了するまで待ってから、結果を確認したいと思います。どうやってやるの?
誰かがコード化されたUIテストを使用してウィンドウを制御する方法を知っていれば、それが役立つと思いますが、今までその例は見つかりませんでした!
Visual Studio Ultimate 2012 でコード化された ui テストを使用して my-app のテストを作成しようとしています。my -app で別のアプリを実行します (「別のアプリ」の実行中に cmd ウィンドウが開きます)。この「別のアプリ」の実行が完了するまで待ってから、結果を確認したいと思います。どうやってやるの?
誰かがコード化されたUIテストを使用してウィンドウを制御する方法を知っていれば、それが役立つと思いますが、今までその例は見つかりませんでした!
私は方法を見つけます。
私の問題は、「別のアプリ」の実行に関連するコマンドウィンドウを制御して待つことでした。
システムと VS レコーダーを実行し、別のアプリの cmd ウィンドウがポップアップしたときに記録を開始し、ウィンドウを最大化して記録を停止しました。これを行って、このウィンドウを制御する自動生成コードを取得しました。取得したコード:
public void WaitUntilAnotherappFinish()
{
#region Variable Declarations
WinWindow uIAnotherppWindow = this.UIAnotherappWindow
#endregion
// Maximize window
uIAnotherppWindow.Maximized = this.WaitUntilAnotherappFinishParams.UIAnotherappWindowMaximized;
}
そのため、ウィンドウの最大化コマンド ラインを、ウィンドウが存在しないのを待つように置き換えます。
public void WaitUntilAnotherappFinish()
{
#region Variable Declarations
WinWindow uIAnotherppWindow = this.UIAnotherappWindow
#endregion
// wait for window to close
uIAnotherppWindow.WaitForControlNotExist();
}
そして、これはまさに私が望むものでした:)。
重要な注意:このファイルは自動生成されたファイルであるため、変更が取り消される可能性があることに注意してください。テストファイルに独自のメソッドを実装することでこれを解決してください。