The Mx-Suite™ is used for the specification, development, and testing of real-time embedded control systems. Components of the suite can be used throughout the product-development life-cycle to improve quality, efficiency, reuse, and communication.
Some of the core components of the suite are:
oEnables you to graphically edit Signals that act as inputs to your test case, and see how the outputs of the System Under Test change.
oAutomatically compares the actual outcome of the system to the expected outcome that you define.
•Mx-VMC™ - This is the Connector Transform that implements our Virtual MicroController (VMC) for Software-in-the-Loop (SIL) testing.
Before hardware is available, Mx-VDev turns your desktop PC into a Virtual MicroController. You can use Mx‑VDev to:
•Build a repository of automated test cases based on the requirements specification before any development is done
•Run test cases directly against a Simulink model
•Test automatically generated code produced by a variety of modeling tools
•Develop and white-box tests to test hand-crafted software
•Perform unit and integration testing of application-layer software
•Perform fully automated regression testing
•Prepare requirements and code coverage reports to let you know how much of your system works
Because part of your development is done on the PC, there are many tools available to help you improve the quality of your development and testing. These include code-coverage tools such as RapiCover and run-time error-detection tools such as DevPartner from Compuware.
When reliable hardware is available, the same test cases can be used with Mx-VDev to:
•Export your test cases to Python script (or other) so that you can run your tests on a Hardware-in-the-Loop tester
•Directly drive digital I/O cards from a PC to test HIL
•Support Design Verification, Product Validation, and end-of-line testing
At Danlaw, we have been focusing on the Software Process for embedded-software engineers for many years. We think that Mx-VDev will fit into your embedded development process and help solve many engineering problems.
When you use the same test tool throughout the development cycle, you can build a single set of reusable, portable test cases. You can focus on this single set of tests to achieve high requirements and code coverage. Automatic test case execution with Mx-VDev enables regression testing with minimal effort.
With a little set-up, you can configure Mx-VDev to simulate all the I/O to your microprocessor, including discrete I/O, analog I/O, message I/O, and an EEPROM interface, or any other interface you may have. Mx‑VDev can simulate the lower level of your system, allowing you to focus on developing and testing your embedded application layer.
The only equipment you need is your PC and Microsoft Visual C++ (.NET).
Mx-VDev is a tool for exercising software. As a developer or a tester, you need to be able to quickly and easily stimulate your code to verify that it operates correctly. Mx-VDev is primarily designed to support the development of event-driven, real-time systems. Some of the key features of Mx-VDev for supporting real-time systems are:
•A comprehensive event scheduler
•A fully configurable time base for the scheduler
•A graphic TestCase editor which allows you to build complex test cases and scenarios easily. You can build, run and test your TestCases much faster with Mx‑VDev than with a scripting language!
One of our design goals for Mx-Suite was to provide an opportunity for TestCase reuse. You can use Mx‑Suite throughout the embedded system development process. The SUT may consist of:
•The source code in a single source file
•The source code in a set of C files that comprise a sub-system
•The full 'Application Layer' of a real-time embedded controller
•Source code generated from a modeling tool such as Simulink™ or Statemate™
•A Simulink model
•A complete electronic module harnessed with:
oData acquisition cards and a custom load box
oTest equipment from National Instruments, dSPACE, and others
With Mx-VDev you can test anything that offers a C/C++/C# or other programming language interface.
Whether you are developing models or C code it is a good idea to test your code early and often. Mx-VDev can be integrated with your development tools (compiler/debugger, modeling tool or emulator) so that as you make changes you can easily run tests to prove that the features work as intended. There are some simple sample projects provided which show how Mx-VDev can be used in conjunction with Microsoft Visual Studio and with Matlab Simulink/Stateflow. Other development tools can be used in a similar way.
For example, when using Mx-VDev in conjunction with Visual Studio, set up test Scenarios and step through your code using the Visual Studio debugger (white-box testing). You can thoroughly test your code before handing it off to the testing team.
When it is time to perform formal validation, you can use Mx-VDev without the debugger. You need only Mx-VDev and an executable file. The executable is built using your target source code and the Mx‑VDev Runtime Harness. This is ideal for situations when you don't want to deliver your source code to a third party for testing.