Testing chaincode
Now we can write unit tests for our chaincode functions, we will use the in-built automated Go testing framework. For more information and documentation, visit Go's official website at: https://golang.org/pkg/testing/
The framework automatically seeks and executes functions with the following signature:
func TestFname(*testing.T)
The function name Fname
is an arbitrary name that must start with an uppercase letter.
Note that the test suite file containing unit tests must end with the suffix, _test.go
; therefore, our test suite file will be named tradeWorkflow_test.go
and placed in the same directory as our chaincode
file. The first argument of the test
function is of the type T
, which provides functions for managing test states and supporting formatted test logs. The output of the test is written into the standard output, it can be inspected in the terminal.
SHIM mocking
The SHIM package provides a comprehensive mocking model that can be used to test chaincodes. In our unit...