5

ファイルでいっぱいのディレクトリから複数のTestNGテストスイートを動的に作成するJavaコードを書きたいです。各ファイルは、ファイルの内容に基づくテストを含むテストスイートに対応しています。重要なのは、スイートごとに特定のセットアップと破棄を行う必要があるということです。

Factoryアノテーションを使用して、単一のファイルから動的にテストを構築できることを知っています。例えば:

public class TestFactory {
    @Factory
    public Object[] createTestFromFile() throws Exception {
        ArrayList<MyTest> tests = new ArrayList<MyTest>();

        BufferedReader reader = new BufferedReader(new FileReader("test1.txt"));
        String testData;
        while ((testData = reader.readLine()) != null) {
            tests.add(new MyTest(testData));
        }

        return tests.toArray();
    }
}

public class MyTest {
    private String testData;

    public MyTest(String testData) {
        this.testData = testData;
    }

    @Test
    public void runTest() {
        assertTrue(testData.equals(testData));
    }

}

しかし、複数のファイルを読み取り、ファイルごとに個別のテストスイートを作成し、それぞれに異なるスイート固有のセットアップ/ティアダウンを設定するにはどうすればよいですか?

4

1 に答える 1

3

おそらくこれが役立つでしょう:プログラムでTestNGを実行 するXMLSuiteクラスを使用して動的スイートを作成できます。おそらく、ファイル名をスイートのパラメーターとして設定し、セットアップ/ティアダウンをリスナーとして設定します。

于 2012-12-06T08:32:15.760 に答える