使用Java,我可以编写针对嵌入式elasticsearch节点的测试。这为我提供了许多测试可能性,例如测试索引配置和分词器。然而更重要的是,我可以使用功能强大、易于阅读和有效的测试来测试我的搜索服务,无需在我的测试中模拟客户端并处理查询构建器和响应等。那么在.NET中,我该如何做到这一点呢?
使用Java,我可以编写针对嵌入式elasticsearch节点的测试。这为我提供了许多测试可能性,例如测试索引配置和分词器。然而更重要的是,我可以使用功能强大、易于阅读和有效的测试来测试我的搜索服务,无需在我的测试中模拟客户端并处理查询构建器和响应等。那么在.NET中,我该如何做到这一点呢?
var uri = new Uri("http://localhost:9200");
var connectionSettings = new ConnectionSettings(uri, "my-test-index");
var client = new ElasticClient(connectionSettings);
my-test-index
现在将用作每次调用的索引,如果没有明确指定索引。根据您的测试有多少侵入性,甚至可以创建一个带有guid后缀的索引,并在每次测试运行后删除该索引。
当运行集成测试时,NEST本身也采用此方法: https://github.com/elastic/elasticsearch-net/blob/develop/src/Tests/Nest.Tests.Integration/IntegrationSetup.cs
"