{"id":20415446,"url":"https://github.com/riot-os/robotfw-tests","last_synced_at":"2025-10-26T17:09:53.597Z","repository":{"id":37735148,"uuid":"168733982","full_name":"RIOT-OS/RobotFW-tests","owner":"RIOT-OS","description":"Includes tests for RIOT based on the Robot Framework ","archived":false,"fork":false,"pushed_at":"2022-08-25T10:46:03.000Z","size":339,"stargazers_count":4,"open_issues_count":16,"forks_count":13,"subscribers_count":29,"default_branch":"master","last_synced_at":"2025-03-26T11:21:26.984Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RIOT-OS.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-02-01T17:21:29.000Z","updated_at":"2024-09-12T10:30:43.000Z","dependencies_parsed_at":"2023-01-16T15:16:03.967Z","dependency_job_id":null,"html_url":"https://github.com/RIOT-OS/RobotFW-tests","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RIOT-OS%2FRobotFW-tests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RIOT-OS%2FRobotFW-tests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RIOT-OS%2FRobotFW-tests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RIOT-OS%2FRobotFW-tests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RIOT-OS","download_url":"https://codeload.github.com/RIOT-OS/RobotFW-tests/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248602302,"owners_count":21131615,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-15T06:16:14.359Z","updated_at":"2025-10-26T17:09:53.534Z","avatar_url":"https://github.com/RIOT-OS.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RIOT HIL Tests\n\nA suite of applications and scripts to run hardware-in-the-loop (HIL) tests for\nthe RIOT-OS.\n\n## Prerequisites\n\n* RIOT-OS development environment, i.e., compilers and tools\n* Python 3.x and `pip3` to run tests\n* Python dependencies, to install:\n```\npip3 install -r dist/robotframework/requirements.txt\n```\n\n## Getting started\n\nFor the impatient developer or user familiar with RIOT-OS follow these steps\nfor a quick start:\n\n1. Clone this repository recursively:\n```\ngit clone --recursive ...\n```\n2. Connect your favourite board\n3. From the root folder of this repository run\n```\nBOARD=\u003cname\u003e make -C tests/xtimer_cli flash robot-test\n```\n\n## Further Information\n\nAll test applications, scripts and tools here should follow the guide lines\nspecified in the RIOT RDM *Guidelines for Write Firmware to Expose RIOT APIs*,\n(see [draft]).\n\nThe tests scripts utilise format and syntax of the [RobotFramework]. Additional\nfiles related to RF can be found in `dist/robotframework`, this includes common\nkeywords and custom libraries.\n\nBesides the applications that are written in C, it is recommend to use Python\nto write tools or interfaces related to running tests. That allows for simple\nintegration with the RF test scripts (and re-usability in general).\n\n## Testing and Changing RIOT Versions\n\nTo test a RIOT version go into the RIOT subdirectory and change to the\ndesired state.  Alternatively, the `RIOTBASE=\u003cpath_to_riot_directory\u003e` can\nbe used.\n\n## Build System Integration\n\nThe (HIL) tests, i.e., the RF test scripts, utilise and integrate with the RIOT\nbuild system. For instance, it uses existing `make` targets like `flash` and\nenvironment variables such as `BOARD` and `PORT`. Further, new targets are\nintroduced namely `robot-test` to specifically trigger RF based HIL testing\nwithout interfering with the existing `test` target in RIOT and `robot-clean`\nto clean the build folder and hence, enable the tests to be rerun.\n\nAdditional `robot` flags can be added with `ROBOT_EXTRA_ARGS`.\nThis can be useful for fine-tuning robot performance while taking advantage of\nthe build system.\nFor example, selecting a single test suite for a test binary:\n```\nROBOT_EXTRA_ARGS=\"-s mytestsuitename\" make robot-test\n```\n\n[draft]: https://github.com/RIOT-OS/RIOT/pull/10624\n[RobotFramework]: https://robotframework.org\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Friot-os%2Frobotfw-tests","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Friot-os%2Frobotfw-tests","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Friot-os%2Frobotfw-tests/lists"}