[英]How to make a bat file and test with it a JUnit4 Test Suite without Eclipse but with Command Line?
我完成了兩個項目,一個是真實的項目,另一個模擬了只生成一些數據的服務器,現在我制作了一個junit測試套件來測試它和所有工程。
現在是時候將真實項目與測試一起發送給創建真實服務器項目的朋友了,后者會生成真實數據。
因此,我現在需要以某種方式准備測試,以便他可以在命令行上運行它們,但是我不知道該怎么做。
我在網上搜索了一下,但無法從命令行運行測試套件……希望您能為我提供幫助。
這是我在測試項目中擁有的:
AllTests類是一個測試套件,我可以運行其中列出的所有測試:
package test.dss;
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.junit.runners.Suite.SuiteClasses;
@RunWith(Suite.class)
@SuiteClasses({
TestAddAndDeleteScript.class,
TestEnumerateScripts.class,
TestEnumerateTemplates.class,
TestExecute.class,
TestGetAllImportsList.class,
TestGetBindings.class,
TestGetSource.class,
TestGetTemplate.class,
TestLogin.class,
TestLogout.class,
TestOpenAndCloseFile.class,
TestReloadLastLog.class,
TestSetDates.class,
TestSetPatientList.class,
TestStartStopTimer.class,
TestUpdateBindingParameters.class,
TestUpdateScript.class,
TestUpdateSharedUserList.class,
TestUpdateTextArea.class
})
public class AllTests {
}
然后是針對另一個項目的測試:
在AllTests類中使用類似的代碼:
package test.mw;
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.junit.runners.Suite.SuiteClasses;
@RunWith(Suite.class)
@SuiteClasses({
TestEnumerateParams.class,
TestEnumeratePatients.class, // za properties, pogledati red 55
TestEnumerateScripts.class,
TestGetAll.class,
TestGetResults.class,
TestLogin.class,
TestLogout.class,
TestRaiseAlarm.class,
TestRegisterUnregisterScript.class,
TestSaveResult.class
})
public class AllTests {
}
現在,我從工作區中刪除了測試,並將其放在桌面上,必須弄清楚如何在命令行中對其進行測試,而我的兩個項目在localhost上以橢圓形運行。
最重要的是,我想創建一個BAT文件,我的朋友可以從命令行運行它並測試他的部分(MW部分)。
是的,我忘了提一下,我運行測試所需的所有jar文件都位於JRE系統庫,JUnit 4和來自lib文件夾的引用庫中。
因此,我在桌面上創建了CMD Tests文件夾,並復制了測試中的所有文件,如下所示:
因此,這是我的問題的兩個部分:a)如何使用兩個測試套件同時對它們進行測試? ab)如果沒有辦法,如何分別測試每個班級? b)如何制作一個bat文件以一次全部運行?
請幫忙。
如果要一起測試兩個測試套件,則無需創建兩個測試套件。 只需將所有測試類放入單個Suite中即可。
但是從兩個套件運行測試將看起來像這樣:
java -cp "lib/*;bin" org.junit.runner.JUnitCore test.dss.AllTests test.mv.AllTests
只需將.bat
文件和該內容放置在項目的根目錄中,就可以開始使用了。
您還可以使用相同的命令來運行特定的測試,這意味着:
java -cp "lib/*;bin" org.junit.runner.JUnitCore test.dss.TestExecute
注意:我不知道您如何編譯課程。 我猜它們都在bin
文件夾中。 如果不是,則僅將適當的文件夾添加到-cp
部分。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.