Selenium-rc

提供:Dev Guides
移動先:案内検索

セレン-リモートコントロール

Selenium RCとは何ですか?

Selenium Remote Control(RC)は、Selenium WebDriver(Selenium 2.0)が登場するまで長い間続いていたメインのSeleniumプロジェクトでした。 現在、WebDriverはより強力な機能を提供するため、Selenium RCはほとんど使用されていませんが、ユーザーは引き続きRCを使用してスクリプトを開発できます。

Java、C#、Perl、Python、PHPなどのプログラミング言語のフルパワーを活用して自動化されたWebアプリケーションUIテストを作成し、ファイルの読み取りと書き込み、データベースのクエリ、テスト結果の電子メール送信などのより複雑なテストを作成できます。

Selenium RCアーキテクチャ

Selenium RCは、クライアントライブラリがSelenium RCサーバーと通信して、実行する各Seleniumコマンドを渡すことができるように機能します。 次に、サーバーはSelenium-Core JavaScriptコマンドを使用してSeleniumコマンドをブラウザーに渡します。

ブラウザは、JavaScriptインタープリターを使用してSeleniumコマンドを実行します。

Selenium IDE 52

Selenium RCには2つの部分があります。

  • Selenium Serverはブラウザーを起動および終了します。 それに加えて、Seleneseコマンドを解釈して実行します。 また、ブラウザとテスト対象のアプリケーション間で渡されるHTTPメッセージをインターセプトおよび検証することにより、HTTPプロキシとして機能します。
  • プログラミング言語(Java、C#、Perl、Python、およびPHP)のそれぞれとSelenium-RCサーバーとの間のインターフェースを提供するクライアントライブラリ。

RCスクリプト

次に、Selenium Remote Controlを使用してサンプルスクリプトを記述しましょう。 Selenium RCを理解するためにhttp://www.seleniumhq.org/download/[http://www.calculator.net/]を使用してみましょう。 「Math Calculators」モジュールの下にある「Percent Calculator」を使用して、パーセント計算を実行します。

  • ステップ1 *-(コマンドプロンプトを使用して)Selenium Remote Controlを開始します。
  • ステップ2 *-Selenium RCを起動した後、Eclipseを開き、以下に示すように「新しいプロジェクト」を作成します。

Selenium IDE 53

  • ステップ3 *-プロジェクト名を入力し、[次へ]ボタンをクリックします。

Selenium IDE 54

  • ステップ4 *-ソース、プロジェクト、ライブラリ、および出力フォルダーを確認し、「完了」をクリックします。

Selenium IDE 55

  • ステップ5 *-「プロジェクト」コンテナを右クリックし、「ビルドパスの構成」を選択します。

Selenium IDE 56

  • ステップ6 *-「selrcdemo」のプロパティが開きます。 「ライブラリ」タブに移動し、「外部JARの追加」を選択します。 ダウンロードしたSelenium RC jarファイルを選択すると、次のように表示されます。

Selenium IDE 57

  • ステップ7 *-参照されるライブラリは、以下のように表示されます。

Selenium IDE 58

  • ステップ8 *-「src」フォルダを右クリックして「新規」>>「クラス」を選択して、新しいクラスファイルを作成します。

Selenium IDE 59

  • ステップ9 *-クラスファイルの名前を入力し、以下に示すように「public static void main」を有効にします。

Selenium IDE 60

  • ステップ10 *-作成されたクラスは、以下に示すようにフォルダー構造の下に作成されます。

Selenium IDE 70

  • ステップ11 *-コーディングの時間です。 次のコードにはコメントが埋め込まれており、読者に何が出されたかを理解させることができます。
package selrcdemo;

import com.thoughtworks.selenium.DefaultSelenium;
import com.thoughtworks.selenium.Selenium;

public class rcdemo {
   public static void main(String[] args) throws InterruptedException {

     //Instatiate the RC Server
      Selenium selenium = new DefaultSelenium("localhost", 4444 , "firefox", "http://www.calculator.net");
      selenium.start();  //Start
      selenium.open("/"); //Open the URL
      selenium.windowMaximize();

     //Click on Link Math Calculator
      selenium.click("xpath = .//*[@id = 'menu']/div[3]/a");
      Thread.sleep(2500);//Wait for page load

     //Click on Link Percent Calculator
      selenium.click("xpath = .//*[@id = 'menu']/div[4]/div[3]/a");
      Thread.sleep(4000);//Wait for page load

     //Focus on text Box
      selenium.focus("name = cpar1");

     //enter a value in Text box 1
      selenium.type("css=input[name = \"cpar1\"]", "10");

     //enter a value in Text box 2
      selenium.focus("name = cpar2");
      selenium.type("css = input[name = \"cpar2\"]", "50");

     //Click Calculate button
      selenium.click("xpath = .//*[@id = 'content']/table/tbody/tr/td[2]/input");

     //verify if the result is 5
      String result = selenium.getText(".//*[@id = 'content']/p[2]");

      if (result == "5") {
         System.out.println("Pass");
      } else {
         System.out.println("Fail");
      }
   }
}
  • ステップ12 *-次に、「実行」ボタンをクリックしてスクリプトを実行します。

Selenium IDE 72

  • ステップ13 *-スクリプトの実行が開始され、ユーザーは[コマンド履歴]タブでコマンド履歴を確認できます。

Selenium IDE 71

  • ステップ14 *-アプリケーションの最終状態を以下に示します。 割合が計算され、以下に示すように画面に結果が表示されます。

Selenium IDE 73

  • ステップ15 *-テストの出力は、以下に示すようにEclipseコンソールに出力されます。コンソールに出力を出力したためです。 リアルタイムでは、出力はHTMLファイルまたは単純なテキストファイルに書き込まれます。

Selenium IDE 74