Fuze™ Test Overview#
What is Fuze™ Test?#
Fuze™ Test is an enterprise-level test framework that automates and orchestrates testing across a heterogeneous farm of virtual or physical devices. It is designed, and therefore ideal, for automating embedded systems testing.
Fuze™ Test manages the following elements of your test domain:
Device Under Test Farm (hetero or homogeneous)
Test content (hetero or homgeneus)
Test results
Tools
Control plane (hosts, switches, etc)
Mechanisms (robots, etc)
Fuze™ Test#
Fuze™ Test Uses the Tools You Already Have#
Fuze™ Test was designed from the groundup to be a “person in the lab.”
Fuze™ Test as Person in the Lab Model#
Therefore, it performs the same tasks with the same tools that you do. Developing test content is a matter of typing your command syntax and sequence into a text-based test case description file, the format of which is JSON. You can then organize test cases into test suites for logically managing groups of test cases. Test suites are also JSON text files and hence, fully configuration manageable and fully human readable.
A distinct advantage of implementing the test case interface in this way, as opposed to using PyTest for instance, is it avoids abstracting the task of carrying out the steps required to automate a test case. This in turn provides a greater level of control over what actually gets executed at test time. There is no distance between manually replicating a test case scenario, which may be needed for debugging and correcting an issue, and executing the test case using Fuze™ Test. In this way, a user gains a significant level of assurance that Fuze™ Test is executing the test case exactly as the designer expects. It also makes test cases self documenting, and easily reviewable by non-expert stakeholders.
Fuze™ Test Performs (Small) Miracles#
Fuze™ Test overcomes three challenges that are unique to automated testing embedded systems:
Bridges the cloud to the lab
Orchestrates heterogeneus test content across a heterogeneus Device Under Test (DUT) farm
Abstracts equipment and mechanism control
Fuze™ Test Bridges the Cloud to the Lab#
Your build needs to be programmed into, and exercised on, a physical test system. That system sits on a desk or in a rack in a lab or office somewhere, but your build happened in the cloud, or on your desk. Fuze™ Test makes it happen with a little configuration help from your network team.
Bridging the Cloud to the Lab#
Fuze™ Test Orchestrates Heterogeneus Test Content#
You have multiple products, with multiple hardware and software versions. Plus, you’ve got three of these, ten of those, and six of the other. Fuze™ Test handles it with ease. Fuze™ Test is built around the concept of Configuration-as-Code. Configure what your test farm looks like and how test content should be exercised given your farm’s composition. Fuze™ Test takes care of the rest.
Heterogeneus Test Content Orchestration#
Fuze™ Test Abstracts Equipment and Mechanism Control#
You need switches and external controls? You have robots? No problem. Fuze™ Test allows you to bind the parameters needed to interface to these mechanisms, whether used at an entire Farm’s scope or an individual DUT’s, and allows you to logically use these parameters them in your test case just as you would if you were executing the test manually on a CLI.
Who Shoud Use Fuze™ Test?#
Both the software development and test organizations benefit from automated test with Fuze™ Test. Being command line based, it’s integratable into any CI automation pipeline. CLI options allow a user to configure scenarios for rapidly testing each PR/commit, as well as releases and time-based testing such as nighlty and weekly requiring longer duration testing.
Your software development, test, and quality organizations are well suited to be the generators of the test content. But since test content generation uses the tools to which anyone has access, there is no limit to its usability: anyone can write a test case in terms of their desired (installed) tools.
Who Benefits from Fuze™ Test?#
The entire organization benefits from using Fuze™ Test. More and faster testing results in higher quality releases delivered more rapidly.
The Web and Mobile development space discovered the benefits of rapid and continuous automated testing long ago. Fuze™ Test brings the same ability into the embedded space.
Fuze™ Test Technologies and Concepts#
Fuze™ Test utilizes the following technologies and concepts:
Test content (i.e., test cases organized into test suites) is created in JSON and can be included in your repository along with your codebase
Configuration of all elements, including DUT farm definition and the bridge from the cloud to the lab(*), takes place in JSON files installed with your Fuze™ Test instance
The Fuze™ Test executive executes on a (cloud) server and a product test adapter (PTA) that executes on the DUT (if capable) or its connected host
Test results are created and delivered in configurable CSV format
Mechanism control is Farm or DUT bound using a logical parameter value mapping allowing abstraction in test cases
DUT-specific power cycle and recovery algorithms and procedures are abstracted
(*) - This requires some level of IT coordination as it requires networking infrastructure and security measures that are outside the scope of Fuze™ Test.
Where Do I Start?#
Start with the Tutorial: Quick Start Guide.