新聞中心
ABAP
ABAP class單元測試的執(zhí)行入口,CLASS_SETUP, 是硬編碼在單元測試框架實現(xiàn)CL_AUNIT_TEST_CLASS里的。
我們擁有十余年網(wǎng)頁設計和網(wǎng)站建設經(jīng)驗,從網(wǎng)站策劃到網(wǎng)站制作,我們的網(wǎng)頁設計師為您提供的解決方案。為企業(yè)提供網(wǎng)站制作、做網(wǎng)站、微信開發(fā)、微信小程序、手機網(wǎng)站制作、H5技術、等業(yè)務。無論您有什么樣的網(wǎng)站設計或者設計方案要求,我們都將富于創(chuàng)造性的提供專業(yè)設計服務并滿足您的需求。


待執(zhí)行的單元測試方法通過CL_AUNIT_TEST_CLASS~get_Test_Methods返回到一個內(nèi)表里,然后LOOP該內(nèi)表,依次執(zhí)行。


Java
最常用的Maven plugin是maven-surefire-plugin,可以方便地單獨觸發(fā)單元測試,或者把單元測試的執(zhí)行集成為Maven build的一個子步驟。

下圖表明在執(zhí)行mvn clean install時,執(zhí)行了srv/test/java/com/sap/testcase下面的兩個test case:

那么maven-surefire-plugin是如何知道哪些.java文件里面的測試方法需要執(zhí)行呢?
到這個目錄下面打開maven-surefire-plugin的實現(xiàn)文件SurefirePlugin.class:
.m2\repository\org\apache\maven\plugins\maven-surefire-plugin\2.20\maven-surefire-plugin-2.20\org\apache\maven\plugin\surefire
反編譯出來,在getDefaultIncludes里面發(fā)現(xiàn)了答案:所有符合后綴Test*.java, Tests.java, TestCase.java結尾的Java文件都作為執(zhí)行單元測試的候選,

Java里單元測試的靈活之處在于可以給同一class里的不同方法指定不同的Category:

然后用命令行mvn install加上參數(shù)-P SlowTests只執(zhí)行category為SlowTests的那些方法:


關于@Category注解的更多高級用法,參考我的SAP Community 博客: Run only given sets of your unit test via @Category。
要獲取更多Jerry的原創(chuàng)技術文章,請關注公眾號"汪子熙"或者掃描下面二維碼:


網(wǎng)站標題:ABAP和Java的單元測試UnitTest
轉載來于:http://www.ef60e0e.cn/article/gpcphi.html