0

私のセットアップは成長し続けているという事実のために、私はTestNGのいくつかのより多くの機能を使用したいと思います。そこで、今日、testng.xmlファイルでgroudを除外しようとしました。

クラス全体をグループの一部として宣言する場合、コンストラクターがその作業(WebDriverインスタンスの開始)を実行することを妨げることはありません。

@Test(groups = "default")
public class ABCDefaultTest extends AbstractABCTest {

    public ABCDefaultTest() {
        super();
    }


}

注意:AbstractABCTestは「abc」グループの一部です

AfterClassメソッドでWebDriverを終了することを考え、追加しました(alwaysRun = true)が、機能しませんでした。

コンストラクターはグループの一部ではないようですが(1つのクラスに異なるグループがある場合に適しています)、@ AfterClass(alwaysRun = true)の注釈付きメソッドは...

しかし、クラスに指定されたグループのみがあり、部分的なグループがない場合、クラスを正しく開始することは意味がありませんか?

私が間違っていること、またはこれがバグかどうかを教えてください。

4

1 に答える 1

0

あなたの解釈は正しいです、グループはTestNG注釈付きメソッドにのみ適用されます。グループが除外された場合に発生したくないコンストラクターでの作業は避けてください。

そのグループに属する@Before*メソッドでこの作業を行うのはどうですか?次に、適切な構成方法(@ BeforeSuite、@ BeforeTest、@ BeforeGroup、または@BeforeClass)を決定する必要があります。

于 2012-07-09T15:54:10.137 に答える