MagicDraw and other modeling tools developed by No Magic Inc. provides a JUnit (www.junit.org) based test framework. The main purpose of the test framework is to simplify the automatic unit and integration tests development for the program and its plugins. The test framework can be used by developers for testing their own plugins or for testing standard essential program features.

On this page

JUnit 3 test cases

The test framework consists of an abstract JUnit test case implementation (com.nomagic.magicdraw.tests.MagicDrawTestCase) and a number of tools (com.nomagic.magicdraw.tests.common.TestEnvironment, com.nomagic.magicdraw.tests.common.comparators.ProjectsComparator) which might be used for the following purposes:

  • Starting the program. 
  • Managing projects.
  • Checking program for memory leaks.


 You can find the code examples in <modeling tool installation directory>\openapi\examples\testframework

JUnit 4 test cases

The test framework also has test class runner implementations (com.nomagic.magicdraw.tests.MagicDrawTestRunner, com.nomagic.magicdraw.tests.ParametrizedMagicDrawTestRunner), which:

  • Starts the program.
  • Checks program for memory leaks.