Reactis for Simulink V2024.2

Reactis Tester Improvements

We aim for performance improvements in Tester with each release. We are happy to report some notable progress on this front with V2024.2.

Coverage targets are central to how Reactis Tester works. They help measure how thoroughly a test suite exercises a model or code and guide Reactis in the generation of effective tests. Some of the coverage metrics used by Reactis include decision coverage, condition coverage, and MC/DC. The Reactis SMT solver interface constructs and solves constraints for two purposes:

  1. to flag targets as unreachable
  2. to guide Reactis Tester in the selection of inputs to exercise targets during test-generation.

Improvements to the solver interface in V2024.2 enable Reactis to detect more unreachable targets and to exercise more targets with generated tests.

The solver support for MC/DC and MCC coverage has been significantly enhanced in V2024.2. Reactis can now flag many MC/DC and MCC targets as unreachable that it previously was unable to detect. Tester-generated tests also cover more MC/DC and MCC targets than tests generated by prior versions of Reactis.

The solver interface has also been extended with additional support for the following Simulink blocks: Selector, Assignment, Enable Port, Trigger Port, and Reset Port. In many cases Reactis now formulates SMT constraints for conditionally-executed subsystems and takes account of the rounding mode for most Simulink blocks with a rounding mode setting.

Performance Improvements for Large Models

In many cases, Reactis V2024.2 imports large models more quickly and uses less memory than prior versions of Reactis. For some models, import takes half as long and memory usage of the GUI is reduced by 65%. In prior Reactis versions, the MATLAB® invocation setting in Reactis could impact import time for a model with a large workspace. In V2024.2, the slower performing settings have been optimized, so all invocation methods perform similarly.

Improvements to Model Rendering

The rendering of models in Reactis has been improved in the following ways.

General Improvements

  • Block annotations are displayed.
  • Improved placement of signal names.
  • Drop shadows for Simulink blocks.
  • Block names are displayed in accordance with the Show Block Name format parameter. If Show Block Name is Auto, the name is displayed only if the name does not match the block’s default name.
IMAGE: Custom mask icon drawing, improved signal name placement, block annotations

IMAGE: Improved signal paths, drop shadows for Simulink blocks

IMAGE: Better support for Format > Show Block Name set to Auto

IMAGE: Don't display gain value if too long.

Custom Block Mask Icons

For masked subsystems, Simulink provides a mechanism to draw an icon on the subsystem block using a set of special MATLAB commands. Reactis V2024.2 supports these commands and draws the custom block mask icons. Below are some example drawing commands along with their rendering in Reactis.

IMAGE: Custom Simulink mask icon drawing: disp, dpoly, droots, image, text.
IMAGE: Custom Simulink mask icon drawing: plot, patch, port_label.

Draw Icons for More Built-In Simulink Blocks

Reactis V2024.2 draws block icons for many built-in Simulink blocks that were drawn as empty rectangles in prior versions of Reactis. A handful of the improvements are shown below. For a more complete list, see the Reactis V2024.2 slides

IMAGE: Improved drawing of native Simulink blocks
IMAGE: Improved drawing of native Simulink blocks

Zoom to Region

When viewing a model in Reactis, you can now zoom in to a region of interest by control-clicking on a corner of the region and dragging diagonally to the opposite corner.

IMAGE: Zoom to region of interest

Newly Supported Simulink Features

The following Simulink features are newly supported in Reactis V2024.2:

  • MATLAB R2024b.
  • Subsystem Reference blocks (requires MATLAB R2022a or later).
  • Outport parameter Ensure Outport is Virtual.

Improved Linking to Requirements

The handling of links from Reactis Validator objectives to external requirements documents (e.g. a Word or Excel file) is more robust. When following a link from an external document to Reactis, the browser tab now includes useful information about the link and any errors that occurred.

Embedded MATLAB® (EML) Support Improvements

V2024.2 adds support for the following functions in all places where Reactis supports the use of EML (e.g., MATLAB Function blocks, MATLAB Action language in Stateflow®):

  • num2str, str2num, strlength, strcmp, char, exist, isfloat, isinteger, islogical.

The following functions are supported when drawing Simulink block masks:

  • dpoly, droots, disp, text, image, patch, color, plot.


Reactis is a registered trademark of Reactive Systems, Inc. MATLAB, Simulink, Stateflow, and Embedded MATLAB are registered trademarks of The MathWorks, Inc.

Best Regards,
The Reactis Team


Back to Communicator Archive