1

サイトのスモーク テストのために Robot Framework を調べていますが、ある時点でサインインする必要があり、新しいウィンドウが開きます。新しいウィンドウに移動するとSelect Windowうまくいきますが、サインインのタイトルを特定することでこの変更を橋渡ししています.新しいウィンドウは、ログインフォームをロードするときにすぐにそのタイトルを採用しません.0.5秒かかることもあります. 5以上。

私は今、テストを 10 秒という非常に長い期間スリープさせることでこの問題を回避していますが、ターゲット ウィンドウを新しいウィンドウに変更し、テストが失敗して終了しないようにするためのより信頼できる方法があることは間違いありません。ページの読み込み中。リダイレクト URL を識別子として使用してみましたが、リダイレクトが非常に速く失敗することがあり、そうでない場合は、ロードされていないログイン フィールドの次のチェックでハングアップします。のようなコマンドを見てきましWait Until Element Is Visibleたが、残念ながら、読み込み中のウィンドウをターゲットにできない場合は役に立ちません...

それのために:

*** Test Cases ***
Basic Workflow
    Open Browser To Homepage
    Go To Sign In

*** Keywords ***
Open Browser To Homepage
    Open Browser    ${HOMEPAGE}     ${BROWSER}
    Maximize Browser Window
    Set Selenium Speed      ${DELAY}

Go To Sign In
    Click Button    Sign In
    Sleep   10s
    Select Window   Sign In
    Title Should Be   Sign In

現在 Selenium2Library を使用しています。

4

1 に答える 1

1

lauda は、選択ウィンドウを管理するためのキーワードを作成しました。Wait Until Keyword Succeeds私はそれが待つためのキーワードを見つけて作りました。

Go To Sign In
    Click Button    Sign In
    Wait Until Keyword Succeeds   20s   3s    Switch To Sign In Page
    Title Should Be   Sign In

Switch to Sign In Page
    Select Window     Sign In

あなたがた両方に感謝します!

于 2016-08-26T18:04:19.357 に答える