Selenium IDEユーザーガイド3(制御フロー)
Selenium Ide User Guide 3
Selenium IDEに含まれているコマンドを使用すると、条件付きロジックとループをテストに追加できます。
これにより、アプリケーションの特定の条件が満たされた場合にのみコマンド(またはコマンドのセット)を実行したり、事前定義された基準に従ってコマンドを繰り返したりすることができます。
JavaScript式
JavaScript式を使用して、アプリケーションの条件を確認します。
テスト中はいつでも使用できますexecute script
またはexecute async script
コマンドはJavaScriptの一部を実行し、結果を変数に格納します。これらの変数は、制御フローコマンドで使用できます。
制御フローコマンドでJavaScript式を直接使用することもできます。
使用可能なコマンド
制御フローコマンドは、コマンド(またはブロック)のセットを表すためにopenコマンドとcloseコマンドを指定することによって機能します。
以下は、それぞれ使用可能な制御フローコマンドとそれに付随するコマンドおよび/または閉じるコマンドです。
if
、else if
、else
、end
times
、end
do
、repeat if
while
、end
例を一つ一つ紹介していきましょう。
条件分岐
条件分岐を使用すると、テストの動作を変更できます。
if
これは、条件付きブロックのopenコマンドです。
また、評価するJavaScript式も提供します。これには、テストで以前のJavaScript式から作成された変数を含めることができます。これらすべてtarget
入力先if
コマンド入力フィールド。
式の評価がtrue
の場合、テストはコマンドの後、次の条件付き制御フローコマンド(たとえば、else if
、else
、またはend
)まで実行します。
式が評価された場合false
後続のコマンドをスキップし、次の関連する条件付き制御フローコマンドにジャンプします(たとえば、else if
、else
、またはend
)。
else if
順序はin if
コマンドブロックで使用されます。
Like if
in target
入力フィールドでJavaScript式を使用して同じものを評価するか、その背後にあるコマンドブランチを実行するか、次の関連する制御フローコマンドにジャンプします(例:else
またはend
)。
else
else
あなたはa if
ブロックで所有できる最終条件にいます。前提条件が満たされていない場合、このコマンドブランチが実行されます。
終了すると、end
コマンドにジャンプします。
end
このコマンドは、条件付きコマンドブロックを終了します。これがないと、コマンドブロックが不完全になり、テストの実行をいつ試行するかを知らせる有用なエラーメッセージが表示されます。
ループ
ループを使用すると、特定のコマンドセットをトラバースできます。
times
Have times
反復回数に対して実行するコマンドのセットを指定できます。番号は順序を入力しますtarget
入力フィールドtimes
。
times
コマンドブロックを閉じるには、必ずend
コマンドを使用してください。
do
あなたからdo
コマンドはこのループを開始し、次に実行されるコマンドを開始し、コマンドで終了しますrepeat if
。repeat if
必要に応じてtarget
JavaScript式入力フィールドで評価されます。
do
最初に次のコマンドが実行され、次に中央の式が実行されますrepeat if
evaluate。式が返されると、true
テストはdo
コマンドに戻り、シーケンスを繰り返します。
これは、条件が戻るまで続きますfalse
または、無限ループ保護をトリガーします-デフォルトは1000
tryです。このデフォルト値を上書きするには、コマンドの入力フィールドに数値を指定してvalue
in repeat if
を渡すことができます。
while
by while
JavaScript式を提供します。target
入力フィールドで評価します。 true
Commandブロックに評価されると、end
commandに達するまで実行を継続します。
完了すると、テストはwhile
コマンドに戻り、同じシーケンスを繰り返します(最初に条件がtrue
またはfalse
になるかどうかを確認します)。
while
コマンドブロックを閉じるには、end
コマンドを使用してください。
ループは、条件が戻るまでfalse
または無限ループ保護がトリガーされるまで再試行します(デフォルトは1000
try)。このデフォルト値を上書きするには、コマンドの入力フィールドに数値を指定してvalue
in while
を渡すことができます。
forEach
最善を尽くそうとすると、コレクション(JS配列など)をトラバースし、プロセスを実行するときにコレクション内の各アイテムを参照することができます。
そのtarget
フィールドに、反復する配列を含む変数の名前を指定します。そのvalue
フィールドで、使用するイテレータ変数の名前を指定します。配列のエントリごとに、次のコマンドが実行されます。各反復中に、現在のエントリの内容はイテレータ変数を介してアクセスされます。
必要に応じて制御フローコマンドをネストできます(たとえば、a if
ブロックを1つに配置できますwhile
ブロック内に配置できます。その逆も可能です)。
制御フローの構文が正しいかどうかわからない場合は、テストを実行して確認してください。 IDEは、制御フロー構文のエラーを検出し、正しくないか欠落している特定のコマンドを呼び出します。
- Selenium IDEユーザーガイド1(クローラースクリプトレコーダー)
- Selenium IDEユーザーガイド2(コマンドラインランナー)
- Selenium IDEユーザーガイド3(制御フロー)
- Selenium IDEユーザーガイド4(コードのエクスポート)
- Selenium IDEユーザーガイド5(FAQ)
- Selenium IDEユーザーガイド6(手順リスト)
- Selenium IDEユーザーガイド7(パラメーター定義) の: 分散プログラミング ソース: https://zthinker.com/ この記事が気に入ったら、QRコードを長押ししてフォローしてください 分散プログラミング 。