2016-12-27 56 views
0

所以我將我的單元測試合併到套件中。有人告訴我,如果我可以歸類測試..JUnit套件的最佳實踐?

所以我有一個會被歸類爲

LoginSuite 
- loginTest.java 
- registerUser.java 
- forgotPass.java 

然後,我有另一個叫做MessagesSuite具有以下的單元測試套件它

以下測試
MessageSuite 
- searchMessages.java 
- sendDirectMessage.java 
- sendChannelMessage.java 

對它進行分類是否合適,以便兩個uni測試套件都被AllSuites文件包圍?這樣的

AllSuites 
- LoginSuite 
- MessageSuite 

如果使子套件,並把它們放在套件內是適當的,我該怎麼做呢?目前,我有我的登錄套件,看起來像下面這樣:

package myPackages.loginSuite; 

import org.junit.runner.RunWith; 
import org.junit.runners.Suite; 
import org.junit.runners.Suite.SuiteClasses; 


@RunWith(Suite.class) 
@SuiteClasses({ 
    forgotPassTest.class, 
    loginTest.class, 
    registerNewUserTest.class }) 
public class LoginSuite { 

} 

回答

0

如果你一直保持LoginSuitemyPackages.loginSuite包/文件夾,MessageSuitemyPackages.messageSuite包和全公寓式myPackages.allSuites包。然後,你的全公寓式代碼應,如下所示:

package myPackages.AllSuites; 

import org.junit.runner.RunWith; 
import org.junit.runners.Suite; 
import org.junit.runners.Suite.SuiteClasses; 

import myPackages.messageSuite.MessageSuite; 
import myPackages.loginSuite.LoginSuite; 

@RunWith(Suite.class) 
@SuiteClasses({LoginSuite.class, MessageSuite.class}) 


public class AllSuite { 
} 

在上面的代碼,作爲套件類(LoginSuiteMessageSuite)具有不同的位置,以下導入語句已添加:

import myPackages.messageSuite.MessageSuite; 
import myPackages.loginSuite.LoginSuite; 
+0

把它們放在一個文件夾中會不合適嗎?我怎麼會在文件夾中調用它們(o有問題正確導入它們在目錄的另一個位置,因爲我不太熟悉java) – Potion

+0

將它們放在包/文件夾中並不合適。可能沒有必要爲每個套件類創建一個單獨的包(例如:* myPackages.loginSuite **),因爲它可能導致包太多。但是,如果您想將套件或測試類放在單獨的包中,則只需在您的類中放入適當的導入語句即可。我修改了我之前的回答,請參考它並讓我知道你是否有任何疑問。 – Mahipal