nest - 用于单元测试 Elasticsearch 项目的 InMemoryConnection

标签 nest elasticsearch-net

使用 InMemoryConnection 类对我们的 Elasticsearch 项目进行单元测试是一个好习惯吗?

此类正在用于单元测试的实际源代码中。但我问的原因是因为它来自 HttpConnection 我不太确定它是否打开任何 HTTP 连接。我们的单元测试转到构建服务器,所以我想避免这种情况。感谢您的帮助。

最佳答案

是的。

如果您查看 InMemoryConnection 的实现,您会看到它覆盖了 DoSynchronousRequestDoAsyncRequest (负责实际执行 HTTP 请求的 HttpConnection 方法),并且只返回一个假的 ElasticsearchResponse 。没有打开 HTTP 连接,也没有发出请求,因此您可以安全地在单元测试中使用它。

关于nest - 用于单元测试 Elasticsearch 项目的 InMemoryConnection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30719847/

相关文章:

c# - 多类型 ElasticSearch 搜索请求 NEST C#

c# - 在 Elasticsearch 中对所有摄取的文档进行分页

c# - “CreateIndexDescriptor”不包含 'AddMapping' 的定义

c# - 高亮请求的 Elasticsearch.NET NEST 对象初始化器语法

nest - 弹性客户端处置

c# - 带有ID列表的Elasticsearch多匹配过滤器

c# - 通过 NEST 检查 ElasticSearch 中是否存在类型

elasticsearch - token 字符映射到 Ngram 过滤器 ElasticSearch NEST

elasticsearch - 使用对象初始值设定项语法构建动态查询

mongodb - 与 Elasticsearch 或其他面向文档的数据库一起使用的最佳文档结构