2016-08-29 6 views
0

나는 Elasticsearch 2.3을 사용하고 있으며 HTTP를 통해 액세스 할 수있는 메모리 내 노드를 통합 테스트에 사용하고자합니다.Elasticsearch 통합 테스트 프레임 워크

나는

https://www.elastic.co/guide/en/elasticsearch/reference/current/integration-tests.html

일부는 내가 Specs2이 프레임 워크를 사용할 수 있나요?

스칼라를 사용하므로 JUnit뿐만 아니라 Specs2를 사용하여 내 스택에서 작업하는 것이 좋을 것입니다.

다시 말해서 Elastic의 Rest API를 통해 데이터에 액세스하여 테스트하고 싶습니다.

감사합니다.

답변

0

간단한 해결책은 메모리 탄성 검색

import org.elasticsearch.common.settings.ImmutableSettings._ 
import org.elasticsearch.node.NodeBuilder._ 

class InMemoryEmbeddedElasticSearch { 

    def doStart(): Unit = node.start 

    def stop(): Unit = { 
     node.stop() 
     node.close() 
    } 

    private val dataDirectory = s"target/elastic/" 

    private val node = 
     nodeBuilder().settings(
      settingsBuilder.put("node.local", "false", 
           "network.host", "127.0.0.1", 
           "http.enabled", "true", 
           "path.data", dataDirectory)) 
        .node() 
} 
을 시작하는 것