# Testing

The goal of the testing is to validate that the different nodes work together as intended. Kumologica tests will always assert against the response received by the flow given a collection of test cases.

A test case will be defined as an input message (test message) and a target node that will be the first node in handling that input message.

Kumologica Designer is of always-hot-deployment during local development, hence, there is no need to deploy before running the test cases.

# Defining a TestCase

Firstly, make sure that all your test flows are defined in the Test tab within Kumologica Designer.

A test flow is defined as one TestCase node as an entry point, zero or more Assert nodes, and ended with a TestCaseEnd node. Following is an example of a test flow:

WARNING

If your TestCase node does not appear in the dropdown of available test cases, make sure that the test flow is defined in the Test tab.

# Environment

All the environment parameters that are required to run the test can be defined in the test tab. Properties set in here will be available to the nodes within your flow under the object: env

Following is an example of two properties injected to the environment for testing:

# Assertions

Assertions is a basic element of testing. In Kumologica, an assertions is a node Assertthat you can chain together in order to validate any part of the response returned by a flow.

A test is marked as passed if all assertions are valid. The result of the assertions will be displayed on the assertions tab.

Following is an example of assertions result after a test execution:

TIP

Please refer to our References section to learn more details about the test nodes: TestCase, Assert and TestCaseEnd.