-
Notifications
You must be signed in to change notification settings - Fork 127
Integration tests
Integration tests in OpenRoberta use exported blockly-XML (the blocks of the program) and generate native programs from that. Then either
- a crosscompiler compiles the generated program (ev3-lejos*, nxt, calliope*, arduino*)
- linting of the generated program should be done (ev3dev, nao, microbit, simulation). This part is missing. Are you interested in doing this?
We hope, that this detects many errors in our code generators (but also errors in the crosscompilers. For example, NXC has some, documented in the issue tracker). To detect as much errors as possible, the blockly-XML should cover as many blocks and as many variants of the blocks as possible.
The blockly-XML of all tests is stored in project OpenRobertaServer in directory src/test/resources/crossCompilerTests. The tests run every night in a docker container for branch develop. We support two types of integration tests: robot specific tests and common tests.
In order to run the tests you need to specify the path to the ora-cc-rsc repository in the environment variable robot_crosscompiler_resourcebase.
- These tests are related to the sensors and actuators of this robot.
- All tests are in robot specific directories (
ev3orardufor example). - Tests can be extended or new tests can be added at any time.
- The tests are run from Java class
CompilerWorkflowIT.
- These tests are related to features, that are common to all robots. This includes flow of control (if, while), variables of all types, built-in functions (like
maxorsin), user-defined functions. - The tests are run from Java class
CompilerWorkflowCommonIT. - Actually lists are a problem, as
nxtandbob3don't support them, so lists are not common to all robots. The test class has to be extended to handle that particular case, too.
Home | Community | Installation | Team 
Installation Tutorials
- Instructions to run a openroberta lab server using DOCKER
- Instructions to run the Open Roberta Lab Server natively on ubuntu ‐ not recommended
- Raspberry Pi 2/3/4 and the Open Roberta Lab
- EV3 and leJOS
- EV3 and ev3dev
- Creating the OR leJOS image
- Arduino Create Agent
- Mbed DAL: Generation and automation
Development
-
Workflows
-
Architecture
-
Blockly
-
Software engineering issues
-
Misc
-
Notes on robots
Textual Representation
Contribution
Discussions on future development