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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

java web junit_如何使用junit测试javaweb工程

發布時間:2023/12/9 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java web junit_如何使用junit测试javaweb工程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一:創建一個測試類,建議將測試類單獨放在一個包中(在 maven 項目里有測試類專門的存放位置),新建一個Junit Test Case類,下一步?

測試類的命名建議是你將要測試的類名+Test,然后點 Browse, 你可以選擇要進行測試的類(一般選擇 Service, 因為 Service 關心的是業務需求),用這種方式創建可以自動生成要測試類的測試類,你只需要進行測試代碼的書寫.

@Testpublic void testqueryById(){} ? ?@Testpublic void testQueryAll(){} ? ?@Testpublic void testReduceNumber(){}123456789101112

如果里面有自動生成的代碼,刪除或注釋即可…

二:配置 spring 和 junit 整合, junit 啟動時加載 springIOC 容器,這里你需要 Spring-test jar包

@RunWith(SpringJUnit4ClassRunner.class) ? ?//告訴junitspring配置文件@ContextConfiguration(locations = {"classpath:spring/spring-dao.xml"})123

同樣的,在測試類中我們會調用 Service 的邏輯,由于我們使用的是 Spring+SpringMVC+ 持久化框架,所以要注入一個 IService 接口(這里我直接對 DAO 進行測試了)

@Autowiredprivate SeckillDao seckillDao;12

接下來是測試邏輯,在編寫測試代碼之前建議覆蓋實體中的 toString 方法,不然打印會很麻煩.

@Test ? ?public void testqueryById(){ ? ? ? ?long id = 1000;Seckill seckill = seckillDao.queryById(id);System.out.println(seckill.getSeckillName());System.out.println(seckill);} ? ?//JAVA沒有保存形參的記錄,如果你在 dao 中傳了多個參數,那么需要聲明它的形參對應的實參,否則 JVM 會顯示找不到參數.聲明方式稍后奉上@Test ? ?public void testQueryAll(){List seckills = seckillDao.queryAll(0, 100); ? ? ? ?for(Seckill seckill:seckills){System.out.println(seckill);}}@Test ? ?public void testReduceNumber(){Date killTime = new Date(); ? ? ? ?//對增加進行測試的時候,只要數據庫增加了一條數據,我們就默認這個方法執行成功了int updateCount = seckillDao.reduceNumber(1000L, killTime);System.out.println("updateCount = "+updateCount);}123456789101112131415161718192021222324

解決JAVA不保存形參的記錄

int reduceNumber(@Param("seckillId")long seckillId,@Param("killTime")Date killTime);Seckill queryById(long seckillId); ? ?/*** mysql的分頁查詢* @param offset 告訴它實際的形參* @param limit* @return*/List queryAll(@Param("offset")int offset,@Param("limit")int limit);1234567891011

總結

以上是生活随笔為你收集整理的java web junit_如何使用junit测试javaweb工程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。