2016-06-14 88 views
-2

我正在使用TestNG。我有一個擁有大約數千個dataProviders方法的類。它看起來像這樣:如何在TestNG中管理多個DataProvider

Class X { 
    // some bootstrap code 

    @DataProvider(name = "test1") 
    public static Object[][] primeNumbers() { 

    } 

    DataProvider(name = "test2") 
    public static Object[][] primeNumbers() { 

    } 

    DataProvider(name = "test3") 
    public static Object[][] primeNumbers() { 

    } 


    ///// some more data providers 

    DataProvider(name = "test100") 
    public static Object[][] primeNumbers() { 

    } 
} 

這個類文件正在增長。我想把它分成小班,這樣它看起來很小並且可以維護。有什麼建議麼?

回答

1

按我的理解,

  1. 如果具有數據商測試僅一類這種類X,那麼就意味着你的類是做這麼多的事情,如果是這種情況,那麼這是對到該類別的SRP(單一責任原則)。如果可能的話,你應該重構主類。

  2. 如果類X用於使數據提供程序用於多個類(可以用於項目中的所有類),那麼可以將它分解併爲每個特定類創建不同的數據提供程序類,僅用於該特定類的數據提供者。

  3. 如果要測試的類足夠小,則可以將數據提供者寫入相同的測試類,而無需爲每個類編寫專用的分離數據提供者類。

您可以根據您的項目要求選擇任何選項。希望它可以幫助你。