# General - Reactis for Simulink

## What is Reactis for Simulink?

Reactis&#174; for Simulink is a testing and validation tool suite
supporting efficient production of high-quality control software. Reactis
supports model-based design with Simulink&#174;/Stateflow&#174; by helping
to answer two important questions:

* *Does my model behave correctly?*

* *Does my code behave as the model specifies it should?*

Reactis consists of three main components: Reactis Tester, Reactis
Simulator, and Reactis Validator.

**Reactis Tester** automatically generates test suites from
Simulink/Stateflow models of embedded control software. The test suites
provide comprehensive coverage of different 
[test-quality metrics](https://reactive-systems.com/doc/reactis-for-simulink/reactis-coverage-metrics.html),
while at the same time minimizing redundancy in tests.

**Reactis Simulator** enables users to visualize execution of
Simulink/Stateflow models. Simulator's user interface is similar to those
of traditional debuggers from programming languages: it enables users to
execute their models step-by-step (or even block-by-block), as well as set
breakpoints. Simulator can also:

* step backwards through a simulation

* enable controlled replay of tests generated by Reactis Tester

* present a graphical display of different coverage metrics

* fine-tune Tester-generated test suites.

**Reactis Validator** performs automated searches of models to find violations
of user-specified requirements. If Validator finds a violation of a
requirement, it creates a test that demonstrates the violation of that
requirement. This test may then be executed in Reactis Simulator to gain an
understanding of the sequence of events that leads to the problem. This
tool enables the early detection of design errors and inconsistencies, and
reduces the manual effort required for design reviews. For more details see
[Reactis for Simulink product
overview](https://reactive-systems.com/products.msp#reactis-for-simulink)

## What is the Reactis for EML Plugin?

The Reactis for EML Plugin integrates seamlessly with Reactis for Simulink
to offer white-box testing for portions of your model implemented with
Embedded MATLAB, e.g. MATLAB Function blocks. For more details, see this
description of how the EML Plugin can help you [test MATLAB Function
blocks](https://reactive-systems.com/embedded-matlab-plugin.msp).

## What is the Reactis for C Plugin?

The Reactis for C Plugin integrates seamlessly with Reactis for Simulink to
offer white-box testing of the C code portions of a model (S-Functions, C
Caller blocks, or Stateflow custom code). The C Plugin enables you to
generate tests that target coverage targets (Statement, Decision,
Condition, MC/DC, MCC) within your C code. When using the Plugin with
Reactis Simulator, you in effect have an advanced C debugger integrated
within the model execution environment. You can step directly from Simulink
or Stateflow into the C code.

## What is Reactis Model Inspector?  

Reactis Model Inspector is a low-cost, lightweight viewer for Simulink models
and testing artifacts created by Reactis. The tool does not require Reactis
or Simulink.

## Which versions of MATLAB, Simulink, and Stateflow are supported?

Reactis {{reactisVer}} supports MATLAB {{matlabVer}}.
