背景:

当我们在进行单元测试时,对于关系型数据库(例如mysql)和非关系型数据库(例如redis)的处理,有的小伙伴通过mock的方式制作出假的数据进行测试,有的小伙伴会连到开发环境操作数据库。而连到开发环境,会受到很多限制,脏数据,其他人也在操作或者你只能通过vpn才能连通,而且测试时可能需要灌大量数据,测完后再删除这些大量数据,很是麻烦。

简介:

可以通过内存数据库来帮助我们解决上面的问题,

H2 数据库是一个不错的选择,它可以随着程序启动去创建数据表和数据,随着程序关闭而销毁,非常方便,可以作为单元测试数据库的替代品;

embedded-redis 是用java写的用来模拟真实redis环境的缓存仓库##

配置:

pom.xml

com.h2database

h2

test

com.github.kstyrc

embedded-redis

0.6

test

yml

spring:

datasource:

schema: classpath:db/schema.sql

driver-class-name: org.h2.Driver

jdbc-url: jdbc:h2:mem:test

username:

password:

initialization-mode: always

redis:

database: 0

host: localhost

port: 6379

password:

mybatis:

configuration:

map-underscore-to-camel-case: true

在db/下存放初始化数据库表和数据的文件

https://github.com/youngsterking/junit

java单元测试内存数据库_基于内存数据库的单元测试相关推荐

  1. 单元测试编写_为什么要编写单元测试-测试技巧8

    单元测试编写 我对最近的博客"您应该测试什么"有很多React,有些人出于各种原因与我达成一致,另一些人则认为建议某些类可能不需要单元测试是完全危险的. 已经处理了什么测试,今天的 ...

  2. 单元测试编写_编写详尽的单元测试

    单元测试编写 As software developers we all know how important it is to unit test the code that we write. S ...

  3. java校园导航_基于Android平台的校园导航系统

    摘要:随着移动网络通讯技术的迅速发展和基于安卓技术的手持终端设备的日益普及,Android手机在学生群体中普遍使用,各类高校内部一般都具有良好的校园网络环境.虽然现在出现了各式各样的地图导航软件,但在 ...

  4. java 单元测试 异步_使用Moq模拟单元测试的异步方法

    我正在测试一个用于进行Web API 调用的服务的方法 . 如果我还在本地运行Web服务(位于解决方案中的另一个项目中),则使用普通 HttpClient 可以正常进行单元测试 . 但是,当我签入我的 ...

  5. java抢单功能_基于消息队列的高并发抢单功能实现方法与流程

    本发明涉及嵌入式软件中间件,具体涉及一种基于消息队列的高并发抢单功能实现方法. 背景技术: 中间件是一种独立的系统软件或服务程序,分布式应用系统借助这种软件在不同的技术之间共享资源,管理计算资源和网络 ...

  6. java智能家居_基于JAVA的智能家居控制系统的设计(毕业设计).doc

    基于JAVA的智能家居控制系统的设计(毕业设计) 基于JAVA的智能家居系统的设计--信息控制子系统 PAGE 4 目 录 TOC \o "1-3" \h \z \u HYPERL ...

  7. java memcache 队列_基于memcache的java分布式队列实现。

    主要有两个类,一个队列类和一个job的抽象类. 保证队列类中的key的唯一性,就可以用spring配置多个实例.水平有限,欢迎吐槽. 上代码: 1.队列类 import net.spy.memcach ...

  8. java商城管理系统_基于SSM框架的JAVA商场管理系统

    每天记录学习,每天会有好心情.*^_^* 今天记录的项目是商场管理系统,这个项目是这么回事:随着人们对手机的需求日益增多,手机卖场的规模也随之扩大.众多手机卖场为了能够高效的运作,获得更大的收益,逐步 ...

  9. java流程审批_基于SSM框架下的JAVA企业流程审批系统

    每天记录学习,每天会有好心情.*^_^* 今天将为大家分析一个企业流程审批系统(现代企业对资金流的控制十分严格,但是绝大部分企业的费用审批还停滞在手动填单.逐级递交.逐级审批的现状,既没有效率也不利于 ...

最新文章

  1. 从JoinBatchGroup 代码细节 来看Rocksdb的相比于leveldb的写入优势
  2. drools规则引擎可视化_Springboot2(60)集成规则引擎Drools
  3. Oracle Dataguard中备库中归档日志不同步
  4. c语言 sizeof size_t,C/C++中的sizeof运算符和size_t类型的详解
  5. 从贝叶斯理论到马尔可夫随机场(MRF)--以图像分割为例
  6. 常见的加密算法 (转自: http://blog.chinaunix.net/uid-8735300-id-2017079.html 本文摘自网络 ,如有雷同 请及时联系我 谢谢)...
  7. PS教程:如何批量处理图片
  8. 【转】Unity3D研究院之设置自动旋转屏幕默认旋转方向
  9. linux用户管理和群界面怎么打开,Linux命令行界面下的用户和组的管理
  10. 使用UniWebView时的内存管理
  11. 欧姆龙PLC HostLink协议整理
  12. android 插件开发 过时,Android Sutdio ( Intelij ) 插件开发
  13. 华为ensp OSPF单区域配置
  14. python 爬虫。爬取小说--斗破苍穹
  15. C语言程序设计期末考试试题(含答案)
  16. 「TYVJ1017」冗余关系
  17. IoTF 2021第七届中国国际物联网博览会
  18. 今日头条如何快速开原创?今日头条怎么一个礼拜开原创?
  19. 《数据同步-NIFI系列》Nifi详细教程入门-01概念
  20. 在意的越多,心理负担就越重

热门文章

  1. python画图显示不了中文_完美解决Python matplotlib绘图时汉字显示不正常的问题
  2. Java SimpleTimeZone setStartRule()方法与示例
  3. css 隐藏元素 显示元素_使用CSS打印时如何隐藏元素?
  4. SpringSecurity +Jwt 实现权限管理
  5. 使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错。字符串的长度超过了为 maxJsonLength 属性设置的值。
  6. linux7 dns正向,Centos 7 搭建DNS正向解析和反向解析
  7. 1命名规则 sentinel_Alibaba Sentinel 规则参数总结
  8. linux上安装python2.6.9_在Linux CentOS 6.6上安装Python 2.7.9
  9. python编程求极限_Sympy笔记一
  10. windows7怎么清空电脑只剩系统