Developing Modelica models is a complex and demanding process, from initial concept to full implementation. Even minor changes can introduce regressions that ripple through dependent libraries and models, making model verification a critical yet daunting task. With libraries often containing hundreds or thousands of models, manual testing quickly becomes impractical.
To address this challenge, we developed DyMoTest: a Windows application designed to automate and simplify the testing of Modelica models. By running multiple simulations in parallel and presenting results in a clear, digestible format, DyMoTest streamlines the verification process and helps developers maintain model integrity.
What is DyMoTest?
DyMoTest is a powerful bulk testing tool for Dymola models, enabling developers to:
- Automate regression testing
- Run multiple simulations in parallel
- Generate detailed reports for quick analysis
- Integrate with CI/CD pipelines for continuous testing
How DyMoTest works
1. Generate reference data
Creating reference data, the baseline results used for future comparisons, is straightforward:
- Load a Modelica library (package.mo file)
- Select the desired experiments
- Click Start
DyMoTest launches multiple Dymola instances (user-defined, hardware-limited) to run simulations concurrently. Every selected model with simulation settings will be executed.
Once complete, DyMoTest generates a detailed report including:
- Execution status (Successful, Failed, OutOfRange etc)
- Simulation logs
- Translation logs
2. Run regression tests
With reference data in place, initiate regression tests to compare current model behaviour against historical benchmarks. DyMoTest automatically:
- Compares logs and variable data
- Detects performance changes or failures
- Highlights anomalies for quick resolution
3. Evaluate your report
DyMoTest's built-in report viewer allows users to:
- Inspect test outcomes in detail
- Visualise model variables with plotting features
- Identify anomalies quickly
Key features of DyMoTest
- Two modes of operation:
- Individual: Local SQLite database for single-user workflows
- Enterprise: MySQL support for multi-user access and collaboration
- Version control integration:
- Seamless integration with SVN
- CLI version optimized for TeamCity
- CI/CD ready:
- Automatic test execution on commit
- Intelligent detection of modified models
- Project settings:
- Manage multiple projects with separate configurations
- Support for different Dymola versions
Why choose DyMoTest?
- Save time: Parallel simulations reduce testing time significantly
- Improve accuracy: Automated comparisons detect regressions early
- Scale easily: Flexible licensing for individuals and enterprises
- Enhance workflow: Built for modern development practices with CI/CD support
Conclusion
As Modelica library development grows in complexity, DyMoTest provides a robust solution for automating and simplifying model testing. By enabling parallel simulations, intuitive result analysis, and seamless integration with version control and CI/CD pipelines, DyMoTest empowers developers to maintain model integrity with speed and confidence.
Ready to streamline your Modelica testing process?
Contact us today to learn more about DyMoTest and request a demo.
Written by: Tiago Ferreira - Software Developer
Engineering
MBSE