When graph databases came into the picture, testing was an unchartered territory and developers had a hard time ensuring that applications were configured in a failsafe manner. With the introduction of several highly efficient graph data stores, including Titan and Neo4j, several projects and frameworks sprung up in addition to the built-in ones. Neo4j in particular is ACID in nature, transaction-friendly and easy to set up, but a viable testing framework is always useful to ensure that your application runs as intended and helps to identify hidden bugs. In this chapter, we will cover the following topics related to the testing of Neo4j applications:
Testing Neo4j applications with the GraphAware Framework
Unit testing with the Java API and GraphUnit
Performance testing
Benchmarking performance with Gatling
Scaling options for Neo4j applications