Gurinder S Panesar Gurinder S Panesar - 1 year ago 665
Java Question

Embedded Redis for spring boot

I run my Integration Test cases with Spring boot with the help of my local redis-server on my machine but i want an embedded redis server which is not dependent on any server and can run on any environment like h2 in memory database..?

@SpringApplicationConfiguration(classes = Application.class)
@DirtiesContext(classMode = DirtiesContext.ClassMode.AFTER_CLASS)
public class MasterIntegrationTest{


Answer Source

You can use an embedded Redis like

  1. Add the dependency to your pom.xml
  2. Adjust the properties for your integration test to point to your embedded redis, for example :

        host: localhost
        port: 6379
  3. Instanciate the embedded redis server in a component that is defined in your tests only :

    public class EmbededRedis {
        private int redisPort;
        private RedisServer redisServer;
        public void startRedis() throws IOException {
            redisServer = new RedisServer(redisPort);
        public void stopRedis() {