Selenium IDEユーザーガイド3(制御フロー)



Selenium Ide User Guide 3



Selenium IDEに含まれているコマンドを使用すると、条件付きロジックとループをテストに追加できます。

これにより、アプリケーションの特定の条件が満たされた場合にのみコマンド(またはコマンドのセット)を実行したり、事前定義された基準に従ってコマンドを繰り返したりすることができます。



JavaScript式

JavaScript式を使用して、アプリケーションの条件を確認します。

テスト中はいつでも使用できますexecute scriptまたはexecute async scriptコマンドはJavaScriptの一部を実行し、結果を変数に格納します。これらの変数は、制御フローコマンドで使用できます。



制御フローコマンドでJavaScript式を直接使用することもできます。

使用可能なコマンド

制御フローコマンドは、コマンド(またはブロック)のセットを表すためにopenコマンドとcloseコマンドを指定することによって機能します。

以下は、それぞれ使用可能な制御フローコマンドとそれに付随するコマンドおよび/または閉じるコマンドです。



  • ifelse ifelseend
  • timesend
  • dorepeat if
  • whileend

例を一つ一つ紹介していきましょう。

条件分岐

条件分岐を使用すると、テストの動作を変更できます。

例の場合

if

これは、条件付きブロックのopenコマンドです。

また、評価するJavaScript式も提供します。これには、テストで以前のJavaScript式から作成された変数を含めることができます。これらすべてtarget入力先ifコマンド入力フィールド。

式の評価がtrueの場合、テストはコマンドの後、次の条件付き制御フローコマンド(たとえば、else ifelse、またはend)まで実行します。

式が評価された場合false後続のコマンドをスキップし、次の関連する条件付き制御フローコマンドにジャンプします(たとえば、else ifelse、または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 ifrepeat 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コマンドを使用してください。

while-example

ループは、条件が戻るまでfalseまたは無限ループ保護がトリガーされるまで再試行します(デフォルトは1000 try)。このデフォルト値を上書きするには、コマンドの入力フィールドに数値を指定してvalue in whileを渡すことができます。

forEach

最善を尽くそうとすると、コレクション(JS配列など)をトラバースし、プロセスを実行するときにコレクション内の各アイテムを参照することができます。

そのtargetフィールドに、反復する配列を含む変数の名前を指定します。そのvalueフィールドで、使用するイテレータ変数の名前を指定します。配列のエントリごとに、次のコマンドが実行されます。各反復中に、現在のエントリの内容はイテレータ変数を介してアクセスされます。

各例 ネストされたコマンド


必要に応じて制御フローコマンドをネストできます(たとえば、a ifブロックを1つに配置できますwhileブロック内に配置できます。その逆も可能です)。

入れ子の例 文法の検証


制御フローの構文が正しいかどうかわからない場合は、テストを実行して確認してください。 IDEは、制御フロー構文のエラーを検出し、正しくないか欠落している特定のコマンドを呼び出します。

エラーの例

  1. Selenium IDEユーザーガイド1(クローラースクリプトレコーダー)
  2. Selenium IDEユーザーガイド2(コマンドラインランナー)
  3. Selenium IDEユーザーガイド3(制御フロー)
  4. Selenium IDEユーザーガイド4(コードのエクスポート)
  5. Selenium IDEユーザーガイド5(FAQ)
  6. Selenium IDEユーザーガイド6(手順リスト)
  7. Selenium IDEユーザーガイド7(パラメーター定義) の: 分散プログラミング ソース: https://zthinker.com/ この記事が気に入ったら、QRコードを長押ししてフォローしてください 分散プログラミング