Building Holochain Apps: Testing

In order to provide a familiar testing framework, a nodejs version of the Holochain framework has been compiled using Rust to nodejs bindings. It is called "holochain-nodejs" and is a publicly installable package on the NPM package manager for nodejs. It enables the execution of Holochain and DNA instances from nodejs.

At a basic level, here is how testing the Holochain DNA you are developing works:

  • Use the hc test command to run a series of steps optimal for testing
  • call a JS file containing tests
  • In the JS file, import the nodejs Holochain Conductor
  • load your packaged DNA into the Conductor, and otherwise configure it
  • use exposed methods on the Conductor to make function calls to the DNA
  • check that the results are what you expect them to be

For checking the results, a basic JavaScript test framework called Tape has received priority support thus far, but other test frameworks can be used.

You have the flexibility to write tests in quite a variety of ways, open to you to explore. This chapter will overview how to approach testing Holochain DNA.

suggest an edit