<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      使用H2數(shù)據(jù)庫進行單元測試

      背景

      H2 數(shù)據(jù)庫是一個開源的嵌入型內存數(shù)據(jù)庫,采用純Java語言實現(xiàn);
      程序非常小巧輕便,整個完整的Jar包也只有1.5M左右,很容易集成到項目中。

      官網(wǎng)地址
      http://www.h2database.com/html/main.html

      在數(shù)據(jù)存儲的場景中,為什么會使用內存數(shù)據(jù)庫?常見的出發(fā)點可能有:

      1. 計算資源限制,如嵌入式計算環(huán)境中,由于CPU、內存、Disk等限制,要求采用小巧的數(shù)據(jù)庫存儲方案;
      2. 項目預研,在項目立項之前可能無法立即采購昂貴的數(shù)據(jù)庫軟件,此時往往可以退而選擇臨時解決方案,利用JDBC協(xié)議的通用性在后期完成切換;
      3. 自動化測試,在自動化環(huán)境中可能需要大量模擬接口,包括數(shù)據(jù)存儲接口,此時內存數(shù)據(jù)庫是不二之選。

      單元測試的場景也屬于自動化測試,下面主要闡述H2 數(shù)據(jù)庫在項目單元測試中的典型應用。

      單元測試的痛點

      一個 Junit單元測試的流程包括

      1. 初始化數(shù)據(jù)
      2. 執(zhí)行測試
      3. 銷毀數(shù)據(jù)

      在真實的測試代碼開發(fā)中,有幾類問題會造成困擾:

      1. 數(shù)據(jù)庫環(huán)境的搭建
        搭建一套完整的數(shù)據(jù)庫往往比較耗時,然而一旦將數(shù)據(jù)庫配置加入測試范圍,就必須長期維護其穩(wěn)定性;
        這同時也會帶來代碼庫同步的困擾。

      2. 保證數(shù)據(jù)庫的"干凈"
        大多數(shù)情況下,每個測試用例在啟動前(初始化數(shù)據(jù))都期望數(shù)據(jù)庫是"干凈"的狀態(tài);然而使用真實的數(shù)據(jù)庫卻很難保證這點,原因是:

        • 多個應用可能會共享一個物理數(shù)據(jù)庫;
        • 測試用例在銷毀數(shù)據(jù)時很難保證完全清除,可能一次意外的調試也會產(chǎn)生垃圾數(shù)據(jù);

      H2內存數(shù)據(jù)庫很好的解決了上述問題,本身作為嵌入式數(shù)據(jù)庫并不需要額外的看護成本;在程序退出時,所有數(shù)據(jù)都能保證完全清除。

      如何使用

      maven 依賴

      <dependency>
          <groupId>com.h2database</groupId>
          <artifactId>h2</artifactId>
          <version>1.4.190</version>
          <scope>test</scope>
      </dependency>
      
      

      在springboot 使用H2數(shù)據(jù)庫非常方便:

      application.properties

      # 數(shù)據(jù)源連接
      spring.datasource.url=jdbc:h2:mem:test
      spring.datasource.driver-class-name=org.h2.Driver
      spring.datasource.username=root
      spring.datasource.password=
      
      # DDL腳本
      spring.datasource.schema=classpath:script/test-schema.sql
      # DML腳本
      spring.datasource.data=classpath:script/test-data.sql
      
      posted @ 2017-06-03 17:36  美碼師  閱讀(7172)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 亚洲av成人免费在线| 国产在线线精品宅男网址| 人妻少妇精品视频专区| 国产熟妇另类久久久久久| 亚洲午夜激情久久加勒比| 在线观看成人永久免费网站| 深夜av在线免费观看| 久久综合给合久久狠狠狠88| 国产一区二区三区黄网| 阿拉善左旗| 色老99久久九九爱精品| 中文字幕人妻色偷偷久久| 亚洲国产成人久久一区久久 | 人妻系列无码专区69影院| 日韩不卡一区二区在线观看| 国产高清一区二区三区视频| 最新亚洲av日韩av二区| 中日韩中文字幕一区二区| 成人一区二区三区在线午夜| 国模少妇无码一区二区三区| 成人深夜节目在线观看| 亚洲欧美国产免费综合视频| 亚洲国产码专区在线观看| 日本中文字幕有码在线视频| 少妇愉情理伦片高潮日本| 成人国产精品日本在线观看| 精品人妻av综合一区二区| 久久国产av影片| 色成人亚洲| 人人做人人妻人人精| 亚洲国内精品一区二区| 久久久久成人精品免费播放动漫| 香港特级三A毛片免费观看| 九九热免费在线观看视频| 亚洲成aⅴ人片久青草影院| 国产偷国产偷亚洲高清午夜| 久草热在线视频免费播放| 色综合色国产热无码一| 人人妻人人做人人爽夜欢视频| 丰满高跟丝袜老熟女久久| 日本免费精品|