これは私が抱えている少しトリッキーな問題のようです。しかし、CodedUI テストの目的でブラウザー ウィンドウとブラウザー タブを区別する方法を知っていますか。これをどのように実装しますか?
質問する
696 次
1 に答える
0
私の理解が正しければ、あなたの目標は、ロード/起動したページがタブ化されているか、新しいブラウザ ウィンドウで起動されているかを識別することです。タブ付きのブラウザー ウィンドウは、スタンドアロンのブラウザー ウィンドウと見分けがつかないことに同意しています。私はあなたのための解決策を持っています - 確かにそれはそれほどエレガントではありませんが、うまくいくはずです.
重要: Ctrl+Tab および Ctrl+Shift+Tab を使用して、タブ付きウィンドウを切り替えることができます。
- 問題のページを起動する
- コード化された UI の記録を開始する
- ページがタブ化されている場合、Ctrl+Shift+Tab を押すと、親ページ、またはタブ化されている他のページに移動します。
- そのページにいることを確認するアサーションを作成します。
- Ctrl+Tab を押すと、テストしている新しいページに戻るはずです。
- その新しいページにいることを確認するアサーションを作成します。
- これらのアサーションが通れば、タブ付きのページがあることがわかります。ページがスタンドアロン ブラウザーに読み込まれた場合、Ctrl+Tab/Ctrl+Shift+Tab は機能せず、アサーションは失敗します。
次のようになります。
[TestMethod]
public void CodedUITestMethod1()
{
//This takes you to the parent tab
this.UIMap.CtrlShiftTab();
//Assertion to confirm you're on the parent page
this.UIMap.AssertParentPage();
//This takes you to the new tab
this.UIMap.CtrlTab();
//Assertion to confirm you're on the new page
this.UIMap.AssertNewPage();
}
それはトリックを行う必要があります。頑張ってください。結果を得る別の方法を見つけた場合はお知らせください。
編集: Ctrl+Number を使用してタブを切り替えることもできます。したがって、Ctrl+1 で最初のタブに移動し、Ctrl+2 で 2 番目のタブに移動します。
于 2013-09-06T13:19:49.687 に答える