日前,在开发一个新的项目,公司有所谓的架构师给了一个新的框架。上来大概跑了几下,就琢磨如何编写单元测试。
工程是个Springboot为主的,包含了一些公司自主编写的jar包,其中一项是直接连接了Reidis。包含了Jar包就直接会去连接。我自己参照官方文档做了个基本SpringBoot的测试类。正常环境可以运行了,开始考虑断网跑一下。一下子就遇到问题了,就是这个Redis的问题,不能屏蔽掉Redis的使用。
头大,最终搜索的半天,终于找了个基于内存的Redis服务器,可以基于它进行单元测试,在需要Spring环境的测试中,先启动RedisServer,然后再运行测试方法。使用方法如下:
1.加入依赖:
testCompile("ai.grakn:redis-mock:0.1.6")
2.编写Spring的Test类的代码
import java.io.IOException;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Ignore;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.transaction.annotation.Transactional;
import ai.grakn.redismock.RedisServer;
@RunWith(SpringRunner.class)
&#