Terminology

Script

When we use the word script, we are referring to test code file itself. SANBlaze scripts are written in BASH and Python and can be run via the CLI or the GUI.

A test is the execution of a script.

IO Test

An IO Test is low level program that runs IO traffic on a device. IO Tests can be started manually from the GUI or the CLI, or using a script.

When started using a script, the timing and control of the IO test can be coordinated with other actions, for example controller resets.

REST tree

The REST tree is the file structure on your SANBlaze equipment that contains the files related to the tests run on the system.

Devices Under Test (DUTs)

The DUTS are instances of the XML_API class that provide an interface for issuing commands to the device.

When you perform an action such as starting an IO test or issuing a controller reset, use duts to specify which controller to take action on. At the beginning of a test, the dut or duts are passed into the program by the statement:

def test(dut):

In this case, the dut is a single controller. It is assigned a target during test initialization.

Example : Run IO for 60s in a single port test.

def main(test_config):
    @setup(test_config)
    def test(dut):      # <- Single controller

        set_var('passtimer', 60)
        while keep_running():
            start_IO(dut)

Example : Run IO for 60s in a dual port test.

def main(test_config):
@setup(test_config)
def test(duts):     # <- Two Controllers
    controller_1 = duts[0]
    controller_2 = duts[1]

    set_var('passtimer', 60)
    while keep_running():
        start_IO(controller_1)

Note

The names controller_1 and controller_2 can be chosen based on your preference.