Selenium IDE

Selenium IDE

  • ドキュメント
  • API
  • プラグイン
  • ブログ
  • ヘルプ

›IDEの拡張

はじめに

  • はじめに
  • Selenium IDE 拡張機能ID
  • ヘルスチェック

概念

  • リクエスト
  • エラー処理
  • コードの出力
  • コードのエクスポート

IDEの拡張

  • コマンドの追加
  • IDEイベント
  • セットアップとティアダウンの出力

APIリファレンス

  • はじめに
  • システム
  • 再生
  • 記録
  • ポップアップ
  • エクスポート

コマンドの追加

Selenium IDEにコマンドを追加するには、まずマニフェストで宣言してください。

コマンドを宣言すると、Selenium IDEは、その実行と出力のリクエストに応答することを期待します。

コマンドの実行

再生がコマンドに達すると、それを実行するためのリクエストを受け取ります。

{
  action: "execute",
  command: {
    command: "commandId",
    target: "target specified",
    value: "value specified"
  },
  options: {
    runId: "unique identifier",
    testId: "test identifier",
    frameId: "the frame context",
    tabId: "the tab context",
    windowId: "the window context"
  }
}
  • action - execute、このアクションはコマンドの実行を要求します。

(略:SVGアイコン)コマンド

ユーザーがテーブルに入力したコマンドの詳細

  • command - マニフェストに記載されているコマンドID(フレンドリーネームではありません)。
  • target - 入力されたターゲット(コマンドがターゲットを取らない場合は安全に無視できます)。
  • value - 入力された値(コマンドが値を取らない場合は安全に無視できます)。

(略:SVGアイコン)オプション

実行環境を詳述した再生オプション

  • runId - オプション。現在のテスト実行の一意の識別子。特定のコマンドが同じ実行中に実行されたかどうかを推測するために使用できます。
  • testId - テストの永続的な一意の識別子。テストの内容が変更された場合でも、常に同じ識別子が送信されます。
  • frameId - integer または 0 || undefined は、コマンドを実行するフレームを示します。0 または undefined は、コマンドをwindowレベルで実行する必要があることを示します。
  • tabId - コマンドを実行するタブ。
  • windowId - テスト中のタブを含むウィンドウ。

**注意:** ユーザーがコマンドをダブルクリックして単独で実行した場合、runIdは生成されません。これは、単一のコマンド実行か、完全なテスト実行かを判断するために使用できます。

(略:SVGアイコン)IDEに結果を送信する

IDEに有効なレスポンスを送信するには、まず、IDEに表示する4つの可能な結果のどれを決定する必要があります。

(略:SVGアイコン)成功

コマンドが成功しました。

sendResponse(true);

(略:SVGアイコン)未決定

コマンドは完了しましたが、成功したかどうかを確実に判断できません。

後でコマンドの状態を更新するには、再生APIを使用します。

sendResponse({ status: "undetermined" });

(略:SVGアイコン)ソフトエラー

コマンドは失敗しましたが、テストケースはその後も実行を継続できます(例:verifyコマンド)。

sendResponse({ error: "detailed error to show the user" });

(略:SVGアイコン)ハードエラー

コマンドが失敗し、テストを続行できなくなりました(例:click)。

sendResponse({ error: "detailed error to show the user", status: "fatal" });

(略:SVGアイコン)コマンドの出力

コマンドラインランナーを使用してテストケースを実行するには、コマンドはそれを実行するためのJavaScriptコードフラグメントも提供する必要があります。

提供に失敗すると、ユーザーはテストケースを保存しようとするとエラーが発生します。

コマンドのコード出力を実装する前に、出力の一般的な概念を理解しておくと役立ちます(リンク)。

この記事ではコマンドのテストコードのみに焦点を当てています。プラグインがセットアップとティアダウンコードを追加する必要がある場合は、セットアップとティアダウンコードの出力を参照してください。

Selenium IDEは、マニフェストに登録したコマンドを出力するリクエストを送信します。

{
  action: "emit",
  entity: "command",
  command: {
    command: "commandId",
    target: "target specified",
    value: "value specified"
  }
}
  • action - emit、このアクションはコードを出力する必要があることを示します。
  • entity - command、このエンティティは、コマンドが出力されることを示します。

(略:SVGアイコン)コマンド

ユーザーがテーブルに入力したコマンドの詳細

  • command - マニフェストに記載されているコマンドID(フレンドリーネームではありません)。
  • target - 入力されたターゲット(コマンドがターゲットを取らない場合は安全に無視できます)。
  • value - 入力された値(コマンドが値を取らない場合は安全に無視できます)。

(略:SVGアイコン)出力されたコードの返却

コマンドを実行するJavaScript文字列の作成が完了したら、IDEに送り返します。

returnキーワードを使用しないでください。Promiseを待つ必要がある場合は、awaitを使用してください。returnを使用すると、テストが途中で終了します。

**注意:** コードを整形したり、改行を挿入したりしないでください。IDEが代わりに整形します。

sendResponse(`driver.findElement().then((element) => {element.perform...});`);

IDEの内部出力モジュールで、広範な例を見ることができます。

最終更新日:2019年2月21日
← コードのエクスポートIDEイベント →
  • コマンドの実行
    • IDEに結果を送信する
  • コマンドの出力
    • 出力されたコードの返却
Selenium IDE
ドキュメント
はじめにAPIリファレンスプラグインを作成する
コミュニティ
Slackirc (#selenium)Googleグループ
その他
ブログGitHubスターをつけるレガシーIDE
著作権 © 2019 ソフトウェア・フリーダム・コンサヴァンシー (SFC)