Seleniumは、すべてのwebアプリケーション開発者がよく知っておくべき、オープンソースで自動化された、貴重なテス Seleniumを使用して実行されるテストは、通常、Selenium自動化テストと呼ばれます。 ただし、Seleniumは単一のツールではなく、さまざまなSelenium自動化テストのニーズに対応するツールのコレクションです。 このチュートリアルでは、Seleniumとさまざまな種類のSelenium自動化テストツールについてすべて学びます。
Selenium Automation Testingの概要
しかし、このSelenium automation testingチュートリアルを調べる前に、まずSelenium automation testingの必要性と、Seleniumがどのように最初に登場したかに対処しましょう。
残念ながら、アプリケーション開発プロセスの重要な部分である手動テストには多くの欠点があり、その主な欠点は、プロセスが単調で反復的である これらの障害を克服するために、ThoughtworksのエンジニアであるJason Hugginsは、テストプロセスを自動化することに決めました。 彼は、Webアプリケーションのテストを自動化するJavaScriptTestRunnerと呼ばれるJavaScriptプログラムを開発しました。 このプログラムは2004年にSeleniumに改名されました。
このチュートリアルを完了すると、TestNG、Selenium IDE、Selenium Grid、Selenium WebDriverなどの重要なSelenium自動テストの概念をSelenium認定トレーニングコースで習得する必要があります!
Selenium自動化テストの欠点の一つは、webアプリケーションでのみ動作することです。 しかし、AppiumやHPのQTPなどのツールは、ソフトウェアやモバイルアプリケーションをテストするために使用できます。
あなたの仲間から目立つこの鑑定シーズン
私たちの無料コースで学習を開始今すぐ
Selenium自動化テストツール
Seleniumは、テストプロセスを容易にする一連のツールで構成されています。
イチジク: Selenium suite
Selenium IDE
Selenium Automation Testing tutorialの次のセクションでは、Selenium IDEについて知っておく必要があるすべてをカバーしています。 笠谷真也は2006年にSelenium統合開発環境(IDE)を開発した。 従来は、自動テストスクリプトを構築するためのユーザーの操作を記録する使いやすいインターフェイスです。 これは、一般的にプロトタイピングツールとして使用されるFirefoxやChromeのプラグインです。 これは、主に自動化スクリプトの作成を高速化するために開発されました。
IDEは、FirefoxがSelenium IDEをサポートしなくなった新しいFirefox55バージョンにアップグレードされた2017年8月に存在しなくなりました。 Applitoolsは古いSelenium IDEを書き直し、最近新しいバージョンをリリースしました。 最新バージョンには、次のようないくつかの進歩がありました:
- テストスクリプトの再利用性
- テストスクリプトのデバッグ
- Selenium side runner
- 制御フローステートメントのプロビジョニング
- ロケータ機能の改善
次に、Selenium IDEをより詳細に見てみましょう。 IDEのインストール:
ステップ1-Firefoxブラウザを開きます
ステップ2-右上隅のメニューをクリックします
ステップ3-ドロップダウンボック
ステップ4-Find more add-onsをクリックし、”Selenium IDE”と入力します。
ステップ5-Firefoxに追加をクリックします
インストールすると、Selenium IDEアイコンがブラウザの右上隅に表示されます。 それをクリックすると、ようこそメッセージが表示されます。
テストの記録
Selenium automation testing tutorialのこのセクションでは、テストの記録方法を学習します。 最初に、新しいプロジェクトの新しいテストを作成しましょう。 この例では、demo_projectと呼びます。 記録する前に、有効なURLを指定する必要があります。 ブラウザがこのURLに移動すると、記録が開始されます。 Facebookのログインページに移動しましょう。
“記録開始”をクリックすると、Facebookページに送信され、ユーザーとの対話の記録が開始されます。 ユーザーは録音を停止する自由があります。 すべてのユーザーアクションが記録され、スクリプトに変換されます。
作業を保存する
次は、このSelenium Automation Testingチュートリアルで作業を保存する方法を学びます。 IDEで行ったことをすべて保存するには、IDEの右上隅にある「保存」アイコンをクリックします。 プロジェクトを保存する場所の名前と場所の入力を求められます。 その結果、.side拡張子を持つ単一のファイルが作成されます。
再生
ブラウザ内:Selenium automation testing IDEでテストを再生するには、再生するテストを選択して再生ボタンをクリックします。
ブラウザ間で再生する場合は、コマンドラインランナーを使用できます。
Selenium Remote Control(RC)
このSelenium automation testing tutorialがカバーするもう一つの興味深いトピックは、リモートコントロールまたはRCです。 また、RCが最初に存在するようになった理由をカバーしています。 ポール-ハマントはセレン-リモコンを開発した。
当初、Selenium-Coreは2004年にJason Hugginsによって構築されたツール”JavaScriptTestRunner”と呼ばれていました。 これは、ブラウザの組み込みJavaScriptインタプリタを使用してSeleneseコマンドを解釈して実行するJavaScript関数のセットでした。 その後、Selenium-Coreがwebブラウザに注入されました。
さて、JavaScript、テストを考えてみましょう。によって使用されるjs google.comこのプログラムは次のようなページにアクセスできますgoogle.com/mail またはgoogle.com/login の中でgoogle.com ドメイン。
図:Selenium RC
ただし、プログラムは次のような他のドメインの要素にアクセスできませんYahoo.com Selenium-Coreとwebブラウザのローカルコピーは、同じドメインに属するようにインストールする必要がありました。 これは同じオリジンポリシーと呼ばれ、この制限に対処するためにSelenium RCが導入されました。 サーバーはクライアント構成されたHTTPプロキシとして機能し、Selenium Coreとテストされているwebアプリケーションが同じオリジンを共有すると信じるようにブラ
したがって、Selenium RCはJavaで書かれたサーバーであり、Java、C#、Perl、PHP、Pythonなどのさまざまなプログラミング言語でアプリケーションテストを書くための準備をしています。 RCサーバーはユーザープログラムからのコマンドを受け入れ、それらをSelenium-Core JavaScriptコマンドとしてブラウザに渡します。
Selenium Webdriver
Selenium Automation Testing tutorialの次のセクションでは、Selenium WebDriverに関するすべてについて説明します。 2006年にSimon Stewartによって開発されたSelenium WebDriverは、OSレベルでブラウザを構成および制御できる最初のクロスプラットフォームテストフレームワークでした。 これは、テストケースを作成して実行するためのプログラミングインターフェイスとして機能しました。
図:Selenium WebDriver
Selenium RCとは異なり、WebDriverはRCのようなコアエンジンを必要とせず、ブラウザアプリケーションとネイティブに対話します。 WebDriverは、Python、Ruby、PHP、Perlなどのさまざまなプログラミング言語もサポートしています。 また、Seleniumの自動テスト管理のためにTestNGやJUnitなどのフレームワークと統合することもできます。
Selenium WebDriverのアーキテクチャはシンプルで理解しやすいです:
図:Selenium WebDriver architecture
- Selenium test script-Selenium test scriptは、ドライバによって解釈される上記のプログラミング言語のいずれかで記述されたテストコードです。
- JSON Wire Protocol-JSON Wire Protocolは、サーバーとクライアントの間でデータを転送するためのトランスポートメカニズムを提供します。 JSON Wire Protocolは、さまざまなwebサービスの業界標準として機能します。
- ブラウザドライバ-Seleniumは、ブラウザとの安全な接続を確立するために、各ブラウザに固有のドライバを使用します。
- ブラウザ-Selenium WebDriverは、アプリケーションをテストおよび実行するさまざまなwebブラウザをサポートしています。
–
- Java8以降のバージョンのダウンロードとインストール-Java development kitの最新バージョンをインストールします。 ここをクリックしてインストールします。
- Eclipseまたは任意のJava IDEをダウンロードして設定します-URLリンクを開きます。
ページを下にスクロールし、”その他のダウンロード”セクションの最新バージョンをクリックします。
ダウンロードしたファイルはzipファイルになります。 任意のフォルダにファイルを解凍します。 解凍したら、を開きます。exe eclipseファイル。
次のステップは、ワークスペースを構成することです。 すべてのプロジェクトを保存するディレクトリを選択し、起動アイコンをクリックします。
起動すると、IDE workbenchは次のようになります。
3. ダウンロードSelenium WebDriver Javaクライアント-
- Seleniumの公式ページに移動します。
- webページを下にスクロールし、Selenium ClientとWebDriver言語バインディングを見つけます。
- イメージに示すようにJavaクライアントドライバの”ダウンロード”リンクを、かちりと鳴らして下さい。
ダウンロードしたら、ディレクトリ内のファイルを解凍します。 これは、IDEでSelenium WebDriverを構成するために必要なJarファイルで構成されています。
4. ブラウザのドライバをダウンロードする-自動化スクリプトは、任意のブラウザと互換性がある必要があります。 Seleniumでサポートされているすべてのブラウザには、ドライバファイルが付属しています。 これらは、スクリプトを実行するために不可欠です。 先に進んで、このリンクから最新のドライバファイルをダウンロードしてください。
5. Selenium WebDriverの構成-最後のステップは、Eclipse IDEでSelenium WebDriverを構成することです。 簡単に言えば、テストスクリプトを構築するための新しいJavaプロジェクトを作成します。
プロジェクト名を入力し、使用するJREを選択します。 デフォルトのJREを使用することをお勧めします。 それを選択し、完了をクリックします。
次の最も重要なステップは、ダウンロードしたJava実行可能ファイルを追加することです。 これを行うには、プロジェクトを右クリックします>>ビルドパス>>ビルドパスを設定します。
“ライブラリ”を選択し、”外部Jar”を追加します。
JARファイルを保存したフォルダを開き、2つの実行可能JARファイルを選択します。 それらを追加するには、[開く]をクリックします。
libsフォルダをクリックします>>ファイルを選択します>>開く
ライブラリファイルの追加が完了したら、[適用]をクリックして[閉じる]をクリックします。
これで、Eclipse IDEでWebdriverを正常に構成できました。 これで、最初のテストスクリプトを構築することができます。 これを行うには、Srcフォルダ>>新しい>>クラスを右クリックします
それでは、Firefoxブラウザを起動し、Facebookのホームページを開く簡単なテストスクリプトを作成してみましょう。 スクリプトは以下に提供されています。
注:setPropertyメソッドの2番目の引数は、ブラウザードライバーの場所です。 私たちの場合、geckoドライバをインストールしました。 したがって、パスとファイルの名前を貼り付けます。
実行>>として実行>>Javaアプリケーション
Selenium Grid
このSelenium自動化テストチュートリアルの次のセクションでは、Patrick Lightbody自動化テスト。 Selenium Gridは、異なるブラウザや異なるオペレーティングシステムでのテストの並列実行を可能にし、並列実行を容易にします。 格子は特別に適用範囲が広く、同時性能のための他の続きの部品と統合される。
図:Selenium Grid
グリッドは、複数のノードに接続されたハブで構成されています。 これは、実行されるオペレーティングシステムとブラウザに関する情報とともに実行されるテストを受信します。 次に、グリッドは要件(ブラウザとプラットフォーム)に準拠するノードを選択し、そのノードにテストを渡します。 ノードはブラウザを実行し、その中でSeleniumコマンドを実行します。
結論
このSelenium Automation Testingチュートリアルは、Seleniumとその仕組みについての洞察を得るのに役立ちました。 このチュートリアルでは、pythonでseleniumをどのように使用できるかを学びます。