integration jenkins with selenium webdriver
Seleniumを使用したJenkinsのセットアップと構成のステップバイステップガイド:
DevOpsシリーズの以前のチュートリアルでは、 DevOpsでのAnsibleの役割とJenkinsとの統合 。
Jenkinsは、Javaで記述されたオープンソースツールです。それは提供します 継続的デリバリー そして 継続的インテグレーションサービス ソフトウェア開発用。開発ボックス– QA –ステージ–本番からのコード展開プロセスの手動タスクを自動化します。
推奨読書=> 正確なDevOpsトレーニングチュートリアルシリーズ
Jenkinsは、Git、SVN、ビルドパイプラインなど、統合できる多くのプラグインをサポートしています。
Jenkinsの基本的な機能は、時間といくつかのイベントに基づいて、事前定義されたステップのリストを実行することです。
例えば、 時間どおりに実行する場合は、20分ごとにジョブを実行できます。イベントに基づいて実行する場合は、Gitリポジトリでの新しいコミット後に実行できます。
この記事では、以下の点について説明しました。
- Jenkinsの使用法とセレンとの統合
- バッチファイルを作成して使用するJenkins
- Jenkinsジョブのスケジュールと電子メール通知の追加
- コマンドラインからセレンスクリプトを実行する
Jenkinsを使用する利点は次のとおりです。
- クロスプラットフォームであり、Windows、Linux、Mac OS、およびSolaris環境で使用できます。
- これは無料のオープンソースツールです
- 広く使用され、十分に文書化されている
- 多種多様なツールやテクノロジーとの統合
Jenkinsの他に、次のような多くのツールが市場に出回っています。
- 蟻塚
- 竹
- クルーズコントロール
- チームシティともっとたくさん。
学習内容:
- Jenkinsの使用法とセレンとの統合
- バッチファイルを作成し、Jenkinsで使用する
- Jenkinsジョブのスケジューリング
- メール通知を追加する方法
- コマンドラインからSeleniumスクリプトを実行する
- 結論
- 推奨読書
Jenkinsの使用法とセレンとの統合
JenkinsをSeleniumで使用するには、以下のステップバイステップの手順に従ってください
ステップ1:
Jenkinsの公式ウェブサイトからJenkinsをダウンロード– ジェンキンス 。最新の.warファイルをダウンロードします。 Jenkinsは、コマンドラインから起動することも、Webアプリケーションサーバーで実行することもできます。
コマンドラインからの実行については、以下の手順を参照してください。
1) コマンドプロンプトを開き、次のように入力します java –jar .warファイルのパスを入力します
((注意:拡大表示するには画像をクリックしてください)
二) Enterキーを押して、Jenkins.warファイルが実行を開始したかどうかを確認し、コマンドプロンプトコンソールでステータス情報を確認します。
表示されるはずです– Jenkinsは完全に稼働しています
3) 次に、Jenkinsを使用する準備ができているかどうかを確認します。デフォルトでは、ポート8080を使用します。
「」と入力します http:// localhost:8080 ブラウザで」を選択し、Enterキーを押します。 JenkinsUIが表示されます。
デフォルトでは、Jenkinsダッシュボードが空で読み込まれます。例として上のスクリーンショットでいくつかのJenkinsジョブを作成したため、空で読み込まれませんでした。
ステップ2:
SeleniumをJenkinsで使用するには、JenkinsをSeleniumで構成する必要があります。
以下の手順に従ってください。
- Jenkinsダッシュボードに移動します
- Jenkinsの管理をクリックします
- Jenkinsの構成をクリックします
- JDKインストールをクリックします– JDK名セクションで、Javaホームセクションの下に名前を入力します–Javaパスを指定します
ラジオボタン、 自動的にインストール デフォルトでチェックされています。新しいJavaバージョンで自動的に更新され、Seleniumが新しいJavaバージョンをサポートしていない可能性があるため、チェックを外す必要があります。チェックを外したほうがいいです。次に、(適用して保存)をクリックします。
JenkinsはSeleniumで構成されており、Seleniumで使用する準備ができています。 JenkinsとSeleniumのコードはどちらもJavaで記述されています。したがって、Javaパスを指定すると、内部的にJavaパスが通信してジョブを処理します。
ステップ3:
次に、SeleniumスクリプトとTestNGXMLファイルを作成します。このTestNGXMLファイルはバッチファイルを作成するために必要であり、Jenkinsでそのバッチファイルを使用します。以下のTestNGコードを参照してください。
以下のTestNGコードを参照してください。
package session_2; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.testng.Assert; import org.testng.annotations.Test; public class jenkins_demo { @Test publicvoidtestgooglrsearch(){ WebDriver driver = newFirefoxDriver(); //it will open the goggle page driver.get('http://google.in'); //we expect the title “Google “ should be present String Expectedtitle = 'Google'; //it will fetch the actual title String Actualtitle = driver.getTitle(); System.out.println('Before Assetion ' + Expectedtitle + Actualtitle); //it will compare actual title and expected title Assert.assertEquals(Actualtitle, Expectedtitle); //print out the result System.out.println('After Assertion ' + Expectedtitle + Actualtitle + ' Title matched '); } }
出力 :アサーション前GoogleGoogle
アサーション後、GoogleGoogleタイトルが一致しました
合格:testgooglrsearch
TestNGxmlファイルを作成します。以下のコードを参照してください。
ステップ4:
プロジェクトのルートディレクトリに移動し、ライブラリフォルダを作成します。
以下のスクリーンショットを参照してください。
ここで、Seleniumスクリプトの実行に必要なすべてのjarファイルを追加します。
オープンソースコードレビューツールgit
ステップ5:
バッチファイルを作成し、Jenkinsで使用する
以下の手順に従って、バッチファイルを作成します。
1) メモ帳を開いて次のように入力します-: Java –cp bin; lib / * org.testng.TestNG testng.xml
これを行うことにより、 Java –cp にある.classファイルをコンパイルして実行します 午前 ディレクトリとすべての実行可能jarファイルは次の場所にあります lib ディレクトリとTestNGフレームワークを使用しているので、 org.testng.TestNG。 また、 xmlの名前 予期されるTestNGスクリプトをトリガーするファイル。
二) 拡張子が.batのファイルを保存し、ファイルの種類を確認してください。 「Windowsバッチファイル」である必要があります。バッチファイルが正しく作成されているかどうかをクロスチェックするには、バッチファイルをダブルクリックすると、コードが実行されます。以下のバッチファイルのコードを参照してください。
ステップ6:
次に、Jenkinsにバッチファイルを追加する必要があります。
バッチファイルを追加するには、次の手順に従います。
1) Jenkinsダッシュボードに移動し、Jenkinsで新しいジョブを作成します
二) 新しいアイテムをクリックしてアイテム名を入力し、フリースタイルプロジェクトのラジオボタンを確認します
3) (詳細オプション)をクリックします
4) (カスタムワークスペースを使用)をクリックして、Seleniumスクリプトプロジェクトのワークスペースパスを指定します。 E: Automation_workspace Demo-testNG 「」
5) 次に、(ビルド)に移動し、ドロップダウンボックスからオプションを選択し、Windowsバッチコマンドを使用してビルドを実行します
6) そして、ここにバッチファイル名を付けてください–“ run.bat 「」
7) (適用して保存)をクリックします
8) 今すぐビルドをクリックして、コンソール出力でビルド結果を確認してください
これまでに学んだこと:
- Jenkinsの起動方法
- SeleniumでJenkinsを構成する方法
- バッチファイルを作成し、Jenkinsを介して実行します。
ご存知のとおり、Jenkinsは非常に強力なツールであり、主にナイトリービルドの実行に使用されます。したがって、ビルドをスケジュールし、関係するチームに電子メール通知を送信する方法を学習します。
Jenkinsジョブのスケジューリング
バッチファイルをスケジュールするには、次の手順を実行します。
- ダッシュボードに移動し、Jenkinsジョブをクリックします
- (構成)をクリックしてから、(詳細オプション)をクリックします
- 次に、 ビルドトリガー 選択します 定期的に構築する オプションを選択し、cronジョブパターンを入力します
- cronジョブパターンを理解するには、これに従ってください ウィキリンク
* * * * *と入力しました。これは、毎分ジョブが実行されることを意味します。
- (適用して保存)をクリックします
手動による介入はありません。スクリプトをスケジュールした後、スケジュールされた時間に実行されます。
メール通知を追加する方法
次に、電子メール通知を追加する方法について説明します。
以下の手順を参照してください。
- 「Jenkinsの管理」セクションに移動します
- システムの構成をクリックします
- 電子メール通知を選択します
- SMTPサーバーアドレスを指定します。公式サーバーアドレスがわからないため、Gmailを使用しています。公式サーバーアドレスを知るには、ネットワークサポートチームに連絡してください
- SMTPサーバー名を入力しました= smtp.gmail.com
- 事前リンクをクリックして、(SMTP認証を使用する)チェックボックスをオンにします
- ユーザー名、パスワード、SMTPポート番号を入力します。 Gmailの場合は465です。文字セットをチェックし、それが= UTF-8であることを確認します
- (構成のテスト)ボタンをクリックして、電子メールの構成設定を確認します。
- したがって、ビルドが成功または失敗するたびに、電子メール通知が届きます。
コマンドラインからSeleniumスクリプトを実行する
私たちは今見るでしょう コマンドプロンプトからSeleniumスクリプトを実行する方法 。この部分はジェンキンスとは何の関係もありません。これを共有して、Seleniumに関する追加の洞察を提供します。
以下の手順に従ってください。
- コマンドプロンプトを開き、プロジェクトのベースパスに移動します
- スクリプトファイルのクラスパスを設定します。これは、バイナリファイルとライブラリファイルがこの場所に保存されることを指定していることを意味します
E: Automation_workspace Demo-testNG> set classpath = E: Automation_workspace Demo-testNG bin; E: Automation_workspace Demo-testNG lib *;
- 次のコマンドを入力して、testng.xmlファイルを実行します– java org.testng.TestNG testng.xml
- Enterキーを押すと、スクリプトの実行が開始され、UIにテスト結果が表示されます。
スクリプトの実行中に、「メインクラスorg.testng.TestNGが見つからないかロードできませんでした」というエラーが発生する場合があります。
次に、コマンドプロンプトを閉じて、上記のようにクラスパスを再度設定し、同じ手順を繰り返す必要があります。エラーが解決され、スクリプトが実行されます。
結論
Jenkinsとseleniumの統合により、ソフトウェアコードに変更があるたびにスクリプトを実行し、新しい環境にコードをデプロイできます。 Jenkinsを使用すると、実行履歴とテストレポートを保存できます。
つまり、Jenkinsは、テストケースの準備ができていて、シングルクリックで実行したい場合に非常に便利です。バッチファイルを使用してテストケースを実行するビルドを作成またはスケジュールできます。
さらに読む=> SeleniumをMavenプロジェクトと統合する
注意: このチュートリアルは、SeleniumおよびDevOpsチュートリアルシリーズの一部です。 DevOpsシリーズの前のチュートリアルと次のチュートリアルについては、以下のリンクをクリックしてください。
以下のコメントセクションに質問を投稿してください 。
推奨読書
- Cucumber Seleniumチュートリアル:Cucumber Java SeleniumWebDriverの統合
- Selenium WebDriverの概要– Seleniumチュートリアル#8
- SeleniumとJMeterの統合
- MongoDBでのデプロイ:ステップバイステップのチュートリアル
- 初心者向けの詳細なEclipseチュートリアル
- 最初のWebDriverスクリプトの実装– Selenium WebDriverチュートリアル#10
- SpecflowとSeleniumWebdriverのエンドツーエンドの例
- Seleniumスクリプトを作成するためにFirebugを使用する方法-Seleniumチュートリアル#4