Functional Unit Testing (FUT)

Functional Unit Testing (FUT) verifies individual OpenSync manager functionalities. FUT tests individual functional units on devices, without the need for cloud management and full-scale end-to-end testing.

FUT operates at a higher level than pure unit testing of C source code, which tests function calls and APIs of managers, tools, and libraries. FUT test scripts are implemented as individual shell scripts. They are intended for execution on the Device Under Test (DUT). These scripts are executable manually, and with minimal dependencies, like setup scripts and common libraries. These scripts are all part of the code. You can execute the scripts manually, providing only input parameters.

If you wish to execute the tests with the provided FUT Python framework, run the tests locally on a machine that has access to a Comprehensive Reference Apparatus for Testing OpenSync (CRATOS) .

By executing the tests with a CRATOS, the execution environment is predefined and tested. The framework is based on the python3 test library pytest, with an additionally extended implementation. More details can be find on:

  1. https://github.com/plume-design/opensync-fut-base

  2. https://opensync.atlassian.net/wiki/spaces/OCC/pages/39920140758/FAQ#FUT