|
這兩天做Web開發(fā),發(fā)現(xiàn)通過Spring進(jìn)行對象管理之后,做測試變得復(fù)雜了。因?yàn)樗械腂ean都需要在
applicationContext.xml中加載好,之后再通過@Resource去取得。如果每次都要整個(gè)業(yè)務(wù)流做的差不多了再去測試,這樣效率很
低,也很麻煩。如果單獨(dú)去寫一個(gè)測試用類,這樣太繁瑣了。于是想起Spring有一個(gè)測試框架,能夠整合JUnit進(jìn)行測試,于是便拿出來試試~
廢話不多說,教程直接開始。 1. 加入依賴包使用Spring的測試框架需要加入以下依賴包:
2. 創(chuàng)建測試源目錄和包在此,推薦創(chuàng)建一個(gè)和src平級的源文件目錄,因?yàn)閟rc內(nèi)的類都是為日后產(chǎn)品準(zhǔn)備的,而此處的類僅僅用于測試。而包的名稱可以和src中的目錄同名,這樣由于在test源目錄中,所以不會有沖突,而且名稱又一模一樣,更方便檢索。 3. 創(chuàng)建測試類創(chuàng)建一個(gè)測試用的類,推薦名稱為 “被測試類名稱 + Test”。 測試類應(yīng)該繼承與 AbstractJUnit4SpringContextTests 或 AbstractTransactionalJUnit4SpringContextTests 對于 AbstractJUnit4springcontextTests 和 AbstractTransactionalJUnit4SpringContextTests 類的選擇: 如果再你的測試類中,需要用到事務(wù)管理(比如要在測試結(jié)果出來之后回滾測試內(nèi)容),就可以使用AbstractTransactionalJUnit4SpringTests類。 事務(wù)管理的使用方法和正常使用Spring事務(wù)管理是一樣的。再此需要注意的是,如果想要使用聲明式事務(wù)管理,即使用 AbstractTransactionalJUnitSpringContextTests類,請?jiān)赼pplicationContext.xml文件 中加入transactionManager bean: <bean id="transactionManager" 如果沒有添加上述bean,將會拋出NoSuchBeanDefinitionException,指明 No bean named 'transactionManager' is definded. 4. 配置測試類添加如下內(nèi)容在class前,用于配置applicationContext.xml文件的位置。 @RunWith(SpringJUnit4ClassRunner.class) 5. 創(chuàng)建測試方法創(chuàng)建測試用方法,推薦名稱為 “被測方法名稱+ Test”。 測試方法上方加入 @Test 6. 通過JUnit 4 執(zhí)行右鍵方法名,選擇則“Run As”→“JUnit Test”即可
附錄1:整體測試類文件/* @(#) UserDaoTest.java OK,到此為止就可以使用Spring的測試框架了。 |
|
|