Articles

セレンとは何ですか? セレン自動化テストの概要

セレンとは何ですか?

Seleniumは、さまざまなブラウザやプラットフォーム間でwebアプリケーションを検証するために使用される無料の(オープンソースの)自動化されたテス Java、C#、Pythonなどの複数のプログラミング言語を使用して、Seleniumテストスクリプトを作成できます。 Selenium testing toolを使用して行われるテストは、通常Selenium Testingと呼ばれます。

Seleniumソフトウェアは、単一のツールではなく、組織のさまざまなSelenium QAテストニーズに対応するソフトウェアのスイートです。 ここでは、ツールのリストです

  • Selenium統合開発環境(IDE)
  • Seleniumリモートコントロール(RC)
  • WebDriver
  • Seleniumグリッド

セレンの紹介セレンの紹介
seleniumの紹介

現時点では、selenium rcとwebdriverが単一のフレームワークにマージされ、selenium2が形成されます。 ところで、Selenium1はSelenium RCを指します。 ビデオにアクセスできない場合はここをクリック

このチュートリアルでは、次のことを学びます。

  • セレンとは何ですか?
  • 誰がセレンを開発しましたか?
  • 同じ起源ポリシーの問題
  • Seleniumリモコン(Selenium RC)の誕生
  • Seleniumグリッドの誕生
  • Selenium IDEの誕生
  • WebDriverの誕生
  • Selenium2の誕生
  • だから、なぜ名前セレン?
  • 簡単な紹介Selenium IDE
  • 簡単な紹介Selenium Remote Control(Selenium RC)
  • 簡単な紹介WebDriver
  • Selenium Grid
  • ブラウザと環境のサポートに関する注意
  • あなたの必要性に合った適切なSeleniumツールを選択する方法
  • SeleniumとQTP(現UFT)の比較
  • Seleniumを超えるQTPの利点

誰が開発したのですかセレン?Seleniumはさまざまなツールのコレクションであるため、開発者も異なります。 以下は、セレンプロジェクトに顕著な貢献をしたキーパーソンです

セレンの紹介

主に、seleniumは2004年にjason hugginsによって作成されました。 ThoughtWorksのエンジニアは、頻繁なテストを必要とするwebアプリケーションに取り組んでいました。 アプリケーションの反復的な手動テストがますます非効率的になっていることに気づいた彼は、ブラウザのアクションを自動的に制御するJavaScriptプログ 彼はこのプログラムを”JavaScriptTestRunner”と命名しました。”

他のwebアプリケーションの自動化を支援するこのアイデアの可能性を見て、彼はJavaScriptRunnerをオープンソースにし、後にSelenium Coreと改名しました。

同じ起源ポリシーの問題

同じ起源ポリシーは、JavaScriptコードが起動された場所とは異なるドメインから要素にアクセ 例えば、HTMLコードは次のようになります。www.google.com JavaScriptプログラム”randomScriptを使用しています。js”。 同じオリジンポリシーでは、randomScriptのみが許可されます。内のページにアクセスするためのjs google.com のようなgoogle.com/mail,google.com/login、またはgoogle.com/signupただし、次のような異なるサイトからページにアクセスすることはできませんyahoo.com/search またはグル99。com彼らは別のドメインに属しているため。

Seleniumの紹介

これは、Selenium RCの前に、テスターがSelenium Core(JavaScriptプログラム)とテストされているwebアプリケーションを含むwebサーバーの両方のローカIntroduction to Seleniumセレンの紹介

残念ながら; Selenium Coreを使用しているテスターは、同じオリジンポリシーによって課される制限のために、テスト対象のアプリケーション全体とwebサーバーを自分のローカ そこで、別のThoughtWorkのエンジニアであるPaul Hammantは、Selenium Coreとテストされているwebアプリケーションが同じドメインから来ていると信じるようにブラウザを”だまし” このシステムはSelenium Remote ControlまたはSelenium1として知られるようになった。

Selenium Gridの誕生

Seleniumの紹介

Selenium Gridは、テストの実行時間をできるだけ最小限に抑える必要性に対処するためにPatrick Lightbodyによって開発 彼は当初、システムを”ホストされたQA”と呼んでいました。”これは、重要な段階でブラウザのスクリーンショットをキャプチャし、同時に別のマシンにSeleniumコマンドを送信することができました。

Selenium IDEの誕生

Seleniumの紹介

日本の笠谷慎也は、記録と再生機能を介してブラウザを自動化できるFirefox拡張機能であるSelenium IDEを作 彼は、テストケースの作成の速度をさらに上げるためにこのアイデアを思いついた。 彼は2006年にSelenium IDEをSeleniumプロジェクトに寄付しました。

Webdriverの誕生

Seleniumの紹介Simon Stewartは、ブラウザやwebアプリケーションがSelenium CoreのようなJavaScriptプログラムでより強力で制限的になっていた2006年頃にWebDriverを作成しました。 これは、OSレベルからブラウザを制御できる最初のクロスプラットフォームテストフレームワークでした。

Selenium2の誕生

2008年、Seleniumチーム全体がWebDriverとSelenium RCをマージして、WebDriverがコアであるSelenium2と呼ばれるより強力なツールを形成することに決めました。 現在、Selenium RCはまだ開発されていますが、メンテナンスモードでのみ開発されています。 Seleniumプロジェクトの取り組みのほとんどは、現在Selenium2に焦点を当てています。

では、なぜSeleniumという名前ですか?

Seleniumという名前は、Jasonが彼のチームに一度ひびを入れた冗談から来ました。 Seleniumの開発中に、Mercury Interactiveと呼ばれる別の自動テストフレームワークが人気がありました(はい、HPに買収される前にqtpを最初に作成した会社)。 セレンは水銀中毒のよく知られた解毒剤であるため、Jasonは名前と彼のチームメイトがそれを取ったことを示唆しました。 だから我々はこのフレームワークを現在まで呼び出すようになった方法です。

Selenium frameworkの名前の由来

簡単な紹介Selenium IDE

Selenium統合開発環境(IDE)は、Seleniumスイートの中で最も簡単なフレームワークであり、学ぶのが最も簡単なフレームワークです。 それはあなたが他のプラグインと同じくらい簡単にインストールできるFirefoxのプラグインです。 ただし、その単純さのために、Selenium IDEはプロトタイピングツールとしてのみ使用する必要があります。 より高度なテストケースを作成する場合は、Selenium RCまたはWebDriverのいずれかを使用する必要があります。

Selenium IDEの長所と短所

簡単な紹介Seleniumリモコン(Selenium RC)

Selenium RCは、長い間、Seleniumプロジェクト全体のフラッグシップテストフレームワーク これは、ユーザーが好むプログラミング言語を使用できるようにした最初の自動化されたwebテストツールです。 バージョン2.25.0では、RCは次のプログラミング言語をサポートできます: /p>

  • Java
  • C#
  • PHP
  • Python
  • Perl
  • Ruby

簡単な紹介WebDriver

Selenium RCの長所と短所

簡単な紹介WebDriver

ebDriverは、多くの面でSelenium ideとSelenium rcの両方よりも優れていることが証明されています。 これは、ブラウザのアクションを自動化する際に、より近代的で安定したアプローチを実装しています。 WebDriverは、Selenium RCとは異なり、Selenium自動化テストのためにJavaScriptに依存しません。 それはそれと直接通信することによってブラウザを制御します。 サポートされている言語はSelenium RCの言語と同じです。Selenium Webdriverの長所と短所

Seleniumグリッド

Selenium gridは、Selenium Rcと一緒に使用されるツールで、異なるマシンと異なるブラウザ間で並列テストをすべて同時に実行します。 並列実行とは、一度に複数のテストを実行することを意味します。

機能:

  • 複数のブラウザや環境でのテストの同時実行を可能にします。
  • 非常に時間を節約します。
  • は、ハブとノードの概念を利用します。 ハブは、接続されている各ノードへのSeleniumコマンドの中心的なソースとして機能します。

ブラウザと環境のサポートに関する注意

アーキテクチャの違いにより、Selenium IDE、Selenium RC、WebDriverは異なるブラウザと動作環境をサポー

tr>

Selenium IDE WebDriver
Browser Support Mozilla Firefox Internet Explorer versions 6 to 11, both 32 and 64-bit
Microsoft Edge version 12.10240 & above ( partial support some functionalities under development)
Firefox 3.0 and above
Google Chrome 12.0. and above
Opera 11.5 and above
Android – 2.3以上の携帯電話とタブレットのための
(デバイス&エミュレータ)
iOSの3+携帯電話のための(デバイス&&エミュレータ)
HtmlUnit2.9以上
オペレーティングシステム windows、mac os x、linux 上記のブラウザが実行できるすべてのオペレーティングシステム。

注意: Selenium WebDriverは、廃止されたSelenium RCの後継と呼ばれています&SeleniumHQによって正式に発表されました。 P>

あなたの必要性のための右のセレンツールを選択する方法

Selenium IDE

  • To learn about concepts on automated testing and Selenium, including:
  • Selenese commands such as type, open, clickAndWait, assert, verify, etc.
  • Locators such as id, name, xpath, css selector, etc.
  • Executing customized JavaScript code using runScript
  • Exporting test cases in various formats.
  • プログラミングの予備知識がほとんど、あるいはまったくないテストを作成します。後でRCまたはWebDriverにエクスポートできる単純なテストケースとテストスイートを作成します。
  • FirefoxとChromeに対してのみwebアプリケーションをテストします。

Seleneseよりも表現力豊かな言語を使用してテストを設計する

  • 異なるオペレーティングシステム上の異なるブラウザ(HtmlUnitを除く)に対してテス
  • Selenium Gridを使用して複数の環境にテストを展開します。
  • JavaScriptをサポートする新しいブラウザに対してアプリケーションをテストします。
  • 複雑なAJAXベースのシナリオでwebアプリケーションをテストします。テストケースの設計に特定のプログラミング言語を使用するには、次の手順を実行します。
  • WebDriver

    • テストケースの設計に特定のプログラミング言語を使用するには、
    • テストケースの設計に特定のプログラミング言語を使用するには、
    • AJAXベースの機能が豊富なアプリケーションをテストします。
    • HtmlUnitブラウザでテストを実行します。
    • カスタマイズされたテスト結果を作成します。

    Selenium Grid

    • 複数のブラウザとオペレーティングシステムでSelenium RCスクリプトを同時に実行します。
    • 巨大なテストスイートを実行するには、可能な限り早い時間に完了する必要があります。

    SeleniumとQTP(現在はUFT)の比較

    Quick Test Professional(QTP)は、2006年にHewlett-Packardに買収される前にMercury Interactive社が所有していた独自の自動テストツールです。 Seleniumツールスイートには、以下のようにQTPよりも多くの利点があります-

    QtpよりもSeleniumの利点と利点

    Selenium

    Selenium

    qtp
    オープンソース、無料で使用し、無料で。
    高度に拡張可能 制限されたアドオン
    異なるブラウザ間でテストを実行できます Firefox、Internet Explorer、Chromeでのみテストを実行できます
    自動化(ios&android)と呼ばれるhpソリューションを使用して-hpモバイルセンター
    ブラウザが最小化されている間にテストを実行できます テストは、デスクトップ上に表示されるように
    並行してテストを実行することができます。 は並列でのみ実行できますが、再び有料製品であるQuality Centerを使用して実行できます。

    Advantages of QTP over Selenium

    Advantages of QTP over Selenium
    QTP
    Selenium
    Can test both web and desktop applications Can only test web applications
    Comes with a built-in object repository Has no built-in object repository
    Seleniumは完全な機能を備えたIDEであるため、Seleniumよりも高速に自動化されます。 は、ネイティブIDEを持たず、サードパーティのIDEのみを開発に使用できるため、低速で自動化します
    データ駆動型のテストは、グローバルおよびローカ データ駆動型テストは、テストデータの値を設定するためにプログラミング言語の機能に依存する必要があるため、より面倒です
    ブラウザ内のコントロール(お気に入りバー、アドレスバー、戻るボタン、進むボタンなど)にアクセスすることができます。 テスト対象のwebアプリケーション以外の要素にアクセスできません
    プロの顧客サポートを提供 公式のユーザーサポートは提供されて
    テストデータを外部形式にエクスポートするネイティブ機能を持っています ランタイムデータを外部形式にエクスポートするネイティブ機能を持っていません
    パラメータ化のサポートが構築されています パラメータ化はプログラミングを介して行うことができますが、実装することは困難です。
    テストレポートは自動的に生成されます テスト/バグレポートを生成するためのネイティブサポートはありません。 明らかに、QTPはより高度な機能を備えていますが、Seleniumは3つの主要な領域でQTPを上回ります:

    • コスト(Seleniumは完全に無料であるため)
    • 柔軟性(サポートできるプログラミング言語、ブラウザ、プラットul>

      summary

      • seleniumソフトウェアテストスイート全体は四つのコンポーネントで構成されています:比較的単純なテストケースとテストスイートの作成にのみ使用できるFirefoxアドオンであるSelenium IDE。
      • Selenium Remote Control、Selenium1とも呼ばれ、ユーザーが複雑なテストを作成する際にプログラミング言語を使用できるようにした最初のSeleniumツールです。
      • WebDriverは、テストスクリプトがブラウザに直接通信し、OSレベルから制御できる新しい画期的なものです。
      • Selenium Gridは、さまざまなブラウザやオペレーティングシステム間で並列テストを実行するためにSelenium RCで使用されるツールでもあります。
      • Selenium RCとWebDriverが統合されてSelenium2が形成されました。
      • セレンは、コストと柔軟性の点でQTPよりも有利です。 また、テストを連続して実行することしか許可されていないQTPとは異なり、テストを並行して実行することもできます。