solr-operator
solr-operator copied to clipboard
Introduce comprehensive integration tests
Our unit tests are quite good for a wide variety of use cases, however operator interacts with external systems quite often now.
This includes (but is not limited to):
- Creating ZK Nodes for SolrCloud chRoots.
- Calling Solr APIs when dealing with SolrCollections, SolrCollectionAliases and SolrBackups.
- The new way of upgrading solr pods in #133
These are all use cases that cannot be adequately tested in unit tests. Right now it's relatively easy for us to manually test changes to these parts of the operator, however this reliance on manual tests will not scale to the future when the operator has much more responsibility.
This issue is just to start the discussion, I haven't found any good frameworks to get this started with yet. Hopefully we can put our heads together and come up with something great! 😄
Integration test would be awesome! We do a little bit now internally. I think I've seen TravisCI jobs for other projects using minikube. Perhaps we look at that and setup a harness that can spin up solrclouds and zk to test against. I'll poke around for some examples. Also, might be worth looking at other CI systems to see if they offer similar functionality
example usage of minikube on travis