1

Selenium Web ドライバーを使用して Web アプリケーションを自動化しています。スクリプトがどこかで壊れたら、次のメソッドを続行するのではなく、コードの実行を停止して、自動化がどこで壊れているかを知ることができます。誰でもどうすればそれができるか教えてください。

これがcatchブロックのスニペットです(つまり、私が現在使用している例外)

try {
   //code
} 
catch(Exception e){
   System.out.println("Exception occurred *** " +e.getMessage());
}
4

3 に答える 3

2

あなたが求めていることを理解できたら、これを catch ブロックに入れて、問題を追跡できるようにします。

catch(Exception e)
{
   e.printStackTrace();
   System.exit(1)
}

または、どのブロックが失敗したかを識別する print ステートメントを各 catch ブロックに入れることもできます。

すなわち。

try{
//make a cake
}
catch(CakeException e)
{
   System.out.println("Failed at cake baking);
}

try{
//make a salad
}
catch(LettuceException e)
{
   System.out.println("Failed at lettuce chopping);
}
于 2013-08-28T18:09:12.583 に答える
1

テストは設計上独立していると想定されているため、1 つのテストの失敗が他のテストに影響することはありません。最初に失敗した test で実行を停止した場合、コードにあと何個のエラーがあるかをどのように知ることができますか?

これは、testng にすぐに必要な機能が含まれていない理由を説明する一種の一般的な考え方です。ただし、testng によって提供されるテスト依存関係メカニズムの利点を引き続き得ることができます。

@Test
public void serverStartedOk() {}

@Test(dependsOnMethods = { "serverStartedOk" })
public void method1() {}

したがって、最初の失敗で実行が中断されるように、この方法でメソッドをチェーンする必要があります。

于 2013-08-28T18:11:24.717 に答える