使用 JUnit4 为 Solr 插件编写单元测试,包括创建集合

Writing unit tests for Solr plugin using JUnit4, including creating collections

我为 Solr 编写了一个插件,其中包含新的流表达式。 现在,我试图了解编写单元测试的最佳方式是什么: 需要包括在 Solr 中创建集合的单元测试,因此我将能够检查我的新流表达式 return 我是否是他们认为的正确数据。

我在网上看到有一个名为 "SolrTestCaseJ4" 的 class,但我没有找到如何使用它在 Solr 中创建新集合并向它们添加数据等等。 ..

你能推荐我哪个 class 可以用于那个目的或任何其他方式来测试我的新 classes 吗?

顺便说一句,我们在云模式下使用 Solr 7.1 和 JUnit4。

提前致谢。

你可以使用 MiniSolrCloudCluster

下面是一个如何创建集合的例子(全部用于单元测试):

https://github.com/lucidworks/solr-hadoop-common/blob/159cce044c1907e646c2644083096150d27c5fd2/solr-hadoop-testbase/src/main/java/com/lucidworks/hadoop/utils/SolrCloudClusterSupport.java#L132

最终我找到了一个更好的class,它简化了一切并实现了比MiniSolrCloudCluster更多的功能(实际上它包含MiniSolrCloudCluster作为成员)。

这个 class 调用了 SolrCloudTestCase,正如你所看到的 here,甚至 Solr 的源代码也在他们自己的单元测试中使用它。