1

アノテーションを持つメソッドがあり、優先順位の後に@Testそのpriority=1, data-Provider アノテーションを設定しましたが、クラスpriority=1を実行すると、を持つメソッドがスキップされ、 priority=2.

私はそれを正しくやっていないと思います。助けてください。

4

1 に答える 1

2
  1. 注釈プロパティを配置する順序は重要ではありません。つまり、以下は同じです。
    • @Test(priority = 1, dataProvider = "...")
    • @Test(dataProvider = "...", priority = 1)
  2. a と a を設定するpriorityと、dataProvider期待どおりに動作するはずです。これを示すテストの例を次に示します。

    import org.testng.annotations.DataProvider;
    import org.testng.annotations.Test;
    
    import static org.testng.Assert.assertEquals;
    
    public class ExampleTest {
        private int runFirstInvocationCount = 0;
    
        @Test(priority = 2)
        public void runSecond() {
            assertEquals(runFirstInvocationCount, data().length);
        }
    
        @DataProvider
        public static Object[][] data() {
            return new Object[][]{
                    {/* your data values here */},
                    {/* your data values here */},
                    {/* your data values here */}
            };
        }
    
        @Test(priority = 1, dataProvider = "data")
        public void runFirst(/* your data parameters here */) {
            runFirstInvocationCount++;
        }
    }
    
于 2016-02-19T14:33:15.843 に答える