跳到主要内容

二十二、Elasticsearch 教程: 测试

Elasticsearch 还提供了一个 jar 文件,用于测试 Elasticsearch 相关的代码

我们可以将它添加到任何 Java IDE 中,接着使用 Elasticsearch 提供的框架的进行一系列的测试,例如

1、 单元测试;
2、 集成测试;

3、 随机测试;

开始测试前,我们需要将 Elasticsearch 测试依赖项添加到我们的程序中

如果你使用 maven 来管理项目,那么可以在 pom.xml 中添加以下内容

<dependency>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
<version>6.3.0</version>
</dependency>

接着初始化 EsSetup,然后就可以用它来启动启动和停止 Elasticsearch 节点并创建索引

EsSetup esSetup = new EsSetup();

最后可以调用 esSetup.execute() 方法并传递 createIndex 参数和其它配置、类型、数据等参数来创建索引

单元测试

可以使用 JUnitElasticsearch 测试框架来运行单元测试

使用Elasticsearch 类创建节点和索引,并且可以使用 ESTestCaseESTokenStreamTestCase 类来执行测试

集成测试

集成测试需要使用 ESIntegTestCase 类,而且可以使用集群中的多个节点

Elasticsearch 提供了大量的方法用于集成测试

方法说明
refresh()重新更新集群中的所有索引
ensureGreen()确保集群处于健康的运行状态
ensureYellow()确保集群处于亚健康的黄色运行状态
createIndex(name)使用传递的参数 name 创建一个索引,该索引使用默认配置
flush()更新集群中的所有索引
flushAndRefresh()顺序调用 flush()refresh() 方法