# 5.0 Java integration testing

**URL:** <https://discuss.elastic.co/t/5-0-java-integration-testing/65863>\
**Category:** Elasticsearch\
**Created:** [November 12, 2016, 7:36am UTC](https://discuss.elastic.co/t/5-0-java-integration-testing/65863 "2016-11-12T07:36:49Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![gquintana](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/gquintana/32/48441_2.png) [@gquintana](https://discuss.elastic.co/u/gquintana)\
**Post date:** [November 12, 2016, 7:36am UTC](https://discuss.elastic.co/t/5-0-java-integration-testing/65863/1 "2016-11-12T07:36:49Z")

</div>

Hello,

Prior to 5.0, I was using NodeClient to start an Embededded Elasticsearch node in my JUnit test cases. With that little trick, I was able to test mappings, searches and so on. I used Spring Testing library to DI in DAO classes.

With 5.0, NodeClient has gone and embedding Elasticsearch (even in test case ?) is [forbidden](https://www.elastic.co/blog/elasticsearch-the-server) (most classes are not accessible).

I looked at ESIntegTestCase but inheriting from this huge and complicated class just to start an Elasticsearch node worries me. I don't need all the randomized testing stuff. I wonder how it will integrate with other testing frameworks like Spring Testing?

I could start Elasticsearch outside of test cases ([Maven](http://david.pilato.fr/blog/2016/10/18/elasticsearch-real-integration-tests-updated-for-ga/), Jenkins...) but it will make test cases development and debugging a lot harder.

What choices do I have?

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [November 12, 2016, 9:17am UTC](https://discuss.elastic.co/t/5-0-java-integration-testing/65863/2 "2016-11-12T09:17:36Z")

</div>

I'm using that: [http://david.pilato.fr/blog/2016/10/18/elasticsearch-real-integration-tests-updated-for-ga/](http://david.pilato.fr/blog/2016/10/18/elasticsearch-real-integration-tests-updated-for-ga/)

---

<div class="post-metadata">

**Author:** ![gquintana](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/gquintana/32/48441_2.png) [@gquintana](https://discuss.elastic.co/u/gquintana)\
**Post date:** [November 12, 2016, 3:26pm UTC](https://discuss.elastic.co/t/5-0-java-integration-testing/65863/3 "2016-11-12T15:26:29Z")

</div>

I already read your article.  
But replacing a dozen lines of Java code by hundreds of configuration lines looks cumbersome and is a step backward for me.  
Thanks for answering though

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [November 12, 2016, 4:15pm UTC](https://discuss.elastic.co/t/5-0-java-integration-testing/65863/4 "2016-11-12T16:15:27Z")

</div>

You can also follow the discussion here: [https://github.com/alexcojocaru/elasticsearch-maven-plugin/pull/19](https://github.com/alexcojocaru/elasticsearch-maven-plugin/pull/19) and here: [https://github.com/elastic/elasticsearch/issues/21119](https://github.com/elastic/elasticsearch/issues/21119)

This might be an answer in the future but I have no date for that though.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [December 10, 2016, 4:15pm UTC](https://discuss.elastic.co/t/5-0-java-integration-testing/65863/5 "2016-12-10T16:15:30Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
