TestNG で失敗したテスト ケースを実行する方法: Selenium WebDriver

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

Selenium プロジェクトを作成する

プロジェクトの準備

ステップ1) In Eclipse、 作成する Java 新しい Java プロジェクトをクリックしてプロジェクトを作成する

Selenium プロジェクトを作成する

ステップ2) このステップでは、

  1. プロジェクト名を付ける
  2. 実行環境を選択する
  3. プロジェクトレイアウトオプションを選択します
  4. 「完了」ボタンをクリックします。

Selenium プロジェクトを作成する

完了ボタンをクリックしたとき。 「TestProject」Javaプロジェクトが作成されます。 「TestProject」はこんな感じになります。

Selenium プロジェクトを作成する

ステップ3) 新しく作成したプロジェクトを開きます。 パッケージエクスプローラーに「src」フォルダーが表示されます。

  1. プロジェクトを右クリックし、「新規」を選択します
  2. オプションパッケージを選択してください

Selenium プロジェクトを作成する

ステップ4) このステップでは、

  1. src フォルダーを参照してパッケージを選択します
  2. パッケージ名を指定して、
  3. 最後に、完了ボタンをクリックしてください。 (パッケージ名 ->com.test)

Selenium プロジェクトを作成する

「完了」をクリックすると、プロジェクト構造は次のようになります。

Selenium プロジェクトを作成する

ステップ5) このステップでは、

  1. 次に、新しく作成したパッケージを右クリックし、
  2. オプション「クラス」を選択します。

Selenium プロジェクトを作成する

新しいウィンドウが開きます。

ステップ6) このステップでは、

  1. 「クラス」名を付ける
  2. 修飾子の選択
  3. スーパークラス java.lang.object を参照して選択します
  4. 終了ボタンをクリックします。

ここでは、次のような XNUMX つのクラスを作成しています。 デモA、デモB.

まずクラス DemoA を作成します。

Selenium プロジェクトを作成する

「完了」ボタンをクリックしたとき。 次に、次のようなクラスを作成します。

Selenium プロジェクトを作成する

同様に、クラス DemoB を作成します。「完了」ボタンをクリックすると、クラスは以下のようになります。

Selenium プロジェクトを作成する

ステップ7) TestNG ライブラリをインストールしている場合は、「Java プロジェクト」->「プロパティ」をクリックするだけです。

Selenium プロジェクトを作成する

ステップ8) プロパティウィンドウで、

  1. 「Java ビルドパス」をクリックします。
  2. 「ライブラリ」をクリックします
  3. 「ライブラリの追加」をクリックします。

Selenium プロジェクトを作成する

Next

  1. 「TestNg」をクリックし、
  2. 「次へ」をクリックします。

Selenium プロジェクトを作成する

そして「完了」ボタンをクリックしてください。

Selenium プロジェクトを作成する

この後、以下を書きますwing コー​​ド。

クラスデモAの場合

Selenium プロジェクトを作成する

コードの説明:

  • Driver.manage().window().maximize();

この行により、ブラウザ ウィンドウが最大化されます。

  • driver.get(https://www.google.co.in);

この行は、指定された URL を URL フィールドに入力します。

  • driver.findElement(By.name(“q”)).sendKeys(“Hi”);

この行は「Google」検索を識別します。 box sendKeys メソッドを使用して送信したデータを入力します。

出力: 上記のプログラムにはエラーが含まれているため、実行できません。

クラス DemoB についても同様に、

Selenium プロジェクトを作成する

赤色の下線が引かれた単語がここでのエラーです。 これらのクラスとインターフェイスを含む jar ファイルをまだ追加していないためです。 上記のコードに存在するエラーを削除するには、対応する jar ファイルを追加します。 Java プロジェクトを右クリックし、「プロパティ」を選択します。

Selenium プロジェクトを作成する

ステップ8) プロパティウィンドウで、

  1. 左側のナビゲーションペインで「Java Build path」をクリックします。
  2. 「ライブラリ」タブをクリックし、
  3. 「外部 JAR の追加」をクリックし、Selenium スタンドアロン jar ファイルを選択します。
  4. 「OK」ボタンをクリックします。

Selenium プロジェクトを作成する

この手順を完了すると、すべてのエラーが自動的に削除されます。 そうでない場合は、マウスをコードの上に置きます。wing エラーを解決し、必要なクラスとインターフェイスをすべてインポートします。

@test の場合はまだ sho かどうかwing エラーが発生した場合は、そこにマウスを置きます。 可能なオプションが表示されます。 次に、「TestNG ライブラリの追加」オプションをクリックします。 他の「クラス」に対しても同様に行います。

DemoA と DemoB の両方のクラス内にコードを記述した後、次のステップに進みます。

ステップ9) このステップでは、

  1. プロジェクトを右クリックし、
  2. オプション フォルダーを選択して「lib」というフォルダーを作成し、testNG jar ファイルと Selenium jar ファイル (selenium-server-standalone) を貼り付けます。(Testng と Selenium-server-standalone jar ファイルは Web からダウンロードして保存する必要があります)手動でそのフォルダに移動し、これら XNUMX つの jar をコピーし、その中にある「lib」フォルダを右クリックする必要があります。 eclipse そして「貼り付け」をクリックします)

Selenium プロジェクトを作成する

ステップ10) このステップでは、

1. 親フォルダーを選択します

2. フォルダー名に「lib」を指定します (これら XNUMX つの jar ファイルを lib フォルダーに追加する主な目的は、コマンド プロンプトからの実行中に、プログラムの実行に必要な jar ファイルをコンパイラーに伝えることができることです) testng.xml を実行したい場合は、この場所にあります。 eclipse その場合、この lib フォルダーはまったく必要ありません)

3.「完了」ボタンをクリックします

Selenium プロジェクトを作成する

Testng および Selenium-server-standalone jar ファイルは Web からダウンロードし、システム内に保存する必要があります。手動でそのフォルダーに移動し、これら XNUMX つの jar をコピーし、そのフォルダーにある「lib」フォルダーを右クリックする必要があります。 eclipse そして「貼り付け」をクリックします

フォルダーを作成したら、次のステップでは、DemoA と DemoB のプログラムを Testng.xml ファイルに変換します。

Selenium プロジェクトを TestNG に変換して実行する

ステップ1) このステップでは、

  1. パッケージの下にある XNUMX つの Java ファイルを選択し、右クリックします。
  2. 「testNG」というオプションを選択します。
  3. 「testNG」に変換をクリックします。

Selenium プロジェクトを TestNG に変換して実行する

ステップ2) 新しいウィンドウが開きます。このウィンドウで「de」と入力します。tails ような

  1. 会場
  2. スイート名
  3. テスト名
  4. クラス選択
  5. パラレルモード
  6. 「完了」ボタンをクリックします

Selenium プロジェクトを TestNG に変換して実行する

次に、java プロジェクトの下に testng.xml ファイルが作成され、次のようになります。

Selenium プロジェクトを TestNG に変換して実行する

(その testng.xml ファイルを実行する場合は、パッケージ エクスプローラーの左側のナビゲーション ペインにある testng.xml ファイルを右クリックし、[TestNG Suite として実行] をクリックします。)

ステップ3) testng.xml スイート ファイルは次のようになります。

Selenium プロジェクトを TestNG に変換して実行する

最初に DemoA クラスを実行したい場合は、その完全な行を削除し、次のように DemoB クラスの前に追加します。

Selenium プロジェクトを TestNG に変換して実行する

Selenium プロジェクトを TestNG に変換して実行する

ステップ4) testng.xml ファイルを実行すると、次のように結果が表示されます。wing やり方。 (System.out.println() を使用して実行可能ステートメントを作成していないため、コンソール ウィンドウには何も表示されません)。

Selenium プロジェクトを TestNG に変換して実行する

これは、 eclipse, DemoA、DemoB などの XNUMX つのクラス ファイルを含む同じ testng.xml スイート ファイルをコマンド プロンプトから実行する場合は、次の手順に従う必要があります。

次に、コマンド プロンプトを開き、プロジェクト ワークスペースに移動します。

コマンドライン経由でTestNGを実行する

プロジェクト スペースの場所を見つける必要があります

ステップ1) まず、Java プロジェクトを右クリックし、プロパティ オプションを選択します。 プロパティウィンドウでオプションリソースを選択します。

コマンドライン経由でTestNGを実行する

ステップ2) 「リソース」リンクをクリックすると、左側のナビゲーション ペインに表示されます。 プロジェクトが正確にどこに保存されているかが表示されます

コマンドライン経由でTestNGを実行する

プロジェクトのワークスペースは、 C:\ユーザー\ユーザー\デスクトップ\Guru99\TestProject。 したがって、ディレクトリをその特定の場所に変更します。

ステップ3) 次に、次のように入力しますwing 指示。 (このコマンドは汎用コマンドです)

コマンドライン経由でTestNGを実行する

java -cp "ワークスペースに存在する lib フォルダーのパス\*; プロジェクトワークスペースに存在する bin フォルダーのパス。 プロジェクト ワークスペースの lib フォルダーに存在する testng.jar ファイルのパス」 org.testng.TestNG testng.xml

しかし、私たちのプロジェクトでは次のように書く必要がありますwing

Java –cp  "C:\Users\User\Desktop\Guru99\TestProject\lib\*;
  C:\Users\User\Desktop\Guru99\TestProject\bin" org.testng.TestNG testng.xml

ステップ4) 次に Enter キーを押します。 DemoA と DemoB の両方のクラスが実行を開始します。 最後に、結果がコマンド プロンプトに表示されます。

コマンドライン経由でTestNGを実行する

失敗したテストケースのみを実行する方法

失敗したテスト ケースのみを実行したい場合は、 Eclipse、次に最初にプロジェクトを更新します。

ステップ 1) Java プロジェクト (デモ A および B) を右クリックします。

更新オプションを選択するか、単に Java プロジェクトを選択して F5 キーを押します。

ステップ 2) すると、テスト出力フォルダーが表示されます。

そのフォルダーには、testng-failed.xml という名前のファイルがあります。

失敗した残りのケースのみを実行

ステップ 3) このファイルを右クリックし、「実行」をクリックして、「testNG suite」というオプションを選択します。

XNUMX つのテスト ケースがある場合、すべてのテスト ケースが正常に実行された場合、test-output フォルダーの下にこのフォルダーが表示されないことを意味するとします。 このフォルダーは、テスト ケースの XNUMX つが失敗した場合にのみ表示されます。 次に、このファイルを実行すると、失敗したテスト ケースのみが実行されます。

失敗した残りのケースのみを実行

コマンドラインからtestng-failed.xmlファイルを実行する

ステップ1) 失敗したテスト ケースをコマンド プロンプトで実行するには。 コマンド プロンプトを開き、プロジェクト ワークスペースに移動します。

コマンドラインからのTestng-failed.xmlファイルの実行

私のプロジェクトのワークスペースは C:\ユーザー\ユーザー\デスクトップ\Guru99\TestProject。 したがって、ディレクトリをその特定の場所に変更することになります。

ステップ2) 次のように入力しますwing 指示。 (このコマンドは汎用コマンドです)

java -cp "ワークスペースに存在する lib フォルダーのパス\*; プロジェクトワークスペースに存在する bin フォルダーのパス。 プロジェクト ワークスペースの lib フォルダーに存在する testing.jar ファイルのパス」 org.testng.TestNG test-output/testng-failed.xml

私たちのプロジェクトでは、次のように記述する必要がありますwing

Java –cp "C:\Users\User\Desktop\Guru99\TestProject\lib\*;
C:\Users\User\Desktop\Guru99\TestProject\bin" org.testng.TestNG test-output/testng-failed.xml

ステップ3) 次に Enter キーを押します。 失敗したクラスのみが実行され、表示はそのクラスのみに対応します。

上記のクラス、つまり DemoB では、コードを次のように変更するだけです。

driver.findElement(By.name("a")).sendKeys("Bye");

上記のコードでは要素は見つかりません。 したがって、例外がスローされます。 しかし、私たちのプログラムでは例外を処理していないため、プログラムは残りのコードの実行を停止します。 この理由により、ClassB は失敗します。

コマンドラインからのTestng-failed.xmlファイルの実行

まとめ

  • TestNG は、Junit からインスピレーションを得た自動テスト フレームワークであり、さまざまなアノテーションが含まれています。
  • TestNG は、次の内容を含む標準レポートでレポートを生成します。wing 物事:
  • テストケースはいくつありますか?
  • 合格したテスト ケースは何件ありますか?
  • 失敗したテスト ケースは何件ありますか?
  • スキップされるテスト ケースは何件ありますか?
  • テストクラスをテストスイートファイルに変換することで、複数のテストケースを簡単にグループ化して実行できます。
  • TestNG は、他のサードパーティ ツールと簡単に統合できます。 テスト ケースへの優先順位の割り当て、呼び出し回数を使用した同じテスト ケースの複数回の実行など、さまざまな機能が提供されます。
  • 複数のテスト ケースの実行中にいずれかのテスト ケースが失敗した場合は、その特定のテスト ケースを個別に実行できます。
  • Reporter クラスの静的メソッド「log」を使用して、org.testng に存在するログ情報を保存できます。