0

以下にどのような変更を加える必要がありますか?

メソッドが成功しtestInsertた場合にのみ実行され、失敗としてカウントされないようにしたいと思います。testInternalAccesstestInternalAccess

@Test
public void testInternalAccess() {
    URL url = null;
    try {
        url = new URL("http://internalpage");
        InputStream is = url.openConnection().getInputStream();
    } catch (Exception e) {
        fail();
    }
}

@Test(groups = "database", dependsOnMethods = "testInternalAccess")
public void testInsert() {
  // some code
}

上記の例では:

  1. testInternalAccess実行され、失敗し、失敗したテストとして報告される
  2. testInsert実行して失敗する

または、作成者の TestNG の例を使用して

@Test
public serverStartedOk() {}

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

method1サーバーが実際に正常に起動したかどうかを確認するにはどうすればよいですか? その状態をどのようserverstartedOkに世界に伝えますか?

4

1 に答える 1

1

上記の議論に基づいて、以下に簡単な要約を示します。

testinternalAcecessクラス内のすべてのテストを実行する前にメソッドを実行したいので、@BeforeClass

@BeforeSuite
public void testInternalAccess() {
    URL url = null;
    try {
        url = new URL("http://internalpage");
        InputStream is = url.openConnection().getInputStream();
    } catch (Exception e) {
        fail();
    }
}

このメソッドは、スイートですべてのテストが実行される前に 1 回だけ実行されます。そして、あなたのテスト方法は以下のようなものになります

@Test(groups = "database")
public void testInsert() {
  // some code
}

ビンゴとこれはうまくいくでしょう!

于 2012-11-06T03:51:59.437 に答える