eclipse-gemoc / eclipse-gemoc/gemoc-studio-modeldebugging

Provide tests for the modeling workbench

Open
#46 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
6
Forks
14
PR merge metrics
No merged PRs in 30d

Description

We currently have some system-level tests running for the features of the *language workbench*, ie. creating, compiling, importing languages (see https://github.com/eclipse/gemoc-studio/tree/master/gemoc_studio/tests).

We would also need automated tests for the features of the *modeling workbench*, ie. executing and debugging models. Technically, this is a little tricky, because it means we must deploy languages in the studio compiled for testing purposes, and run tests for these languages. But this is nothing Maven and Tycho cannot handle.

Some preliminary automation work was achieved [here for the generic framework](https://github.com/eclipse/gemoc-studio-modeldebugging/tree/master/framework/execution_framework/tests/org.eclipse.gemoc.executionframework.test.lib), and [here specifically for the java engine](https://github.com/eclipse/gemoc-studio-modeldebugging/tree/master/java_execution/java_engine/tests/org.eclipse.gemoc.execution.sequential.javaengine.tests), which can probably be reused.

At first glance, most importantly we should test:
- each execution engine (if possible with a common test suite for engines), which for the most part consists of checking that the engine sends the correct notifications to its addons, and at the right instants
- each addon, where in this case each addon would have its own test suite focusing on the services provided by the addon (eg. checking that a correct trace is built by the generic trace constructor, or that the stepping services provided by the debugger work well)

Then of course UI testing would be great as well to check that we have the menus and buttons for everything.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.