1
我正在写骆驼单元测试。我接口的一项服务是Solr。经过mock测试后,我想编写测试来调出本地solr实例。如何站起来关闭单元测试中的Solr实例?
到目前为止,我试图利用RestTestBase Solr类(org.apache.solr.util.RestTestBase)。因为我正在编写单元测试,所以我没有扩展这个类,只是尝试使用它提供的静态方法。下面确实没有工作:
RestTestBase.createJettyAndHarness("src/test/resources/solr",
"solrconfig.xml", "schema.xml",
"/solr", true, null);
int solrPort = RestTestBase.jetty.getLocalPort();
String solrURL = "localhost:"+Integer.toString(solrPort)+"/solr";
...
我包含在我的POM的Solr和码头。有关如何编程站起来关闭solr实例的任何建议? (因为我用骆驼单元测试,我不喜欢延长RestTestBase)
感谢您的帮助。这正是我正在寻找的。但是,我遇到了一个问题。当我尝试与solr实例进行交互时(即使使用随同所有超类一起提供的SolrUpdateTest),我得到以下错误: 'java.lang.NoSuchMethodError:org.eclipse.jetty.server.Request.getDispatcherType()Lorg/eclipse/jetty/server/DispatcherType;' 当我在单元测试中休眠线程并尝试打开Solr Web控制台时,它也会触发相同的错误。有任何想法吗? 再次感谢 – user1483714
我的错误来自maven jetty依赖性问题。谢谢你的回答。正是我所寻找的 – user1483714
没问题...祝你好运 –