日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

spring 4.0 JUnit简单的Dao,Service测试

發(fā)布時間:2023/12/10 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 spring 4.0 JUnit简单的Dao,Service测试 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1.AbstractTransactionalJUnit4SpringContextTests 和AbstractJUnit4SpringContextTests。我們在測試用例類要繼承兩種中的一個。

AbstractTransactionalJUnit4SpringContextTests提供了數(shù)據(jù)庫自動回滾,也就是說測試前和測試后數(shù)據(jù)庫是一樣的

AbstractJUnit4SpringContextTests不提供數(shù)據(jù)庫自動回滾,測試會破壞數(shù)據(jù)庫。

查看源碼發(fā)現(xiàn),AbstractTransactionalJUnit4SpringContextTests就是繼承自AbstractJUnit4SpringContextTests,同時類上面多了兩個Annotation:@TestExecutionListeners(TransactionalTestExecutionListener.class) 和@Transactional。所以實現(xiàn)數(shù)據(jù)庫回滾有兩種方法,如下:

?public class BasicTest extends AbstractTransactionalJUnit4SpringContextTests {}?

@TestExecutionListeners(TransactionalTestExecutionListener.class) @Transactional public class BasicTest extends AbstractJUnit4SpringContextTests { }

好吧,說了這么多沒用的還不如直接上代碼

為了避免每個測試用例都要配置spring環(huán)境,先建立一個父類:BasicTest,內(nèi)容很簡單,真的很簡單:

@ContextConfiguration(locations= {"classpath:spring/applicationContext.xml","classpath:spring/spring-servlet.xml"}) public class BasicTest extends AbstractTransactionalJUnit4SpringContextTests {} @ContextConfiguration:顧名思義就是配置context配置文件的地址,我這里是Web程序,所以還要spring-servlet.xml。
網(wǎng)上的例子都有@RunWith注解,但是我發(fā)現(xiàn) AbstractJUnit4SpringContextTests 類上已經(jīng)有了@RunWith,那么這里就不需要了。只要配置@ContextConfiguration就可以了

然后測試用例繼承BasicTest如下: 具體的測試方法怎么寫就不用說了。
public class PeopleServiceTest extends BasicTest{@Resource(name="PeopleService")private PeopleService ps;@Testpublic void queryAll() {List<People> list=ps.queryAll(null);System.out.println(list);Assert.assertEquals("list沒有10個", 10, list.size());}@Testpublic void update() {People p=new People().set("id", 29).set("name", "tom").set("address", "").set("age", 10);Assert.assertEquals("沒有修改", 1, this.ps.update(p));}@Testpublic void insert() {People p=new People().set("name", "Mike").set("address", "america").set("age", 10);Assert.assertEquals("沒有插入", 1, this.ps.add(p));} }

?

?

?

轉(zhuǎn)載于:https://www.cnblogs.com/formyjava/p/4595037.html

總結(jié)

以上是生活随笔為你收集整理的spring 4.0 JUnit简单的Dao,Service测试的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。