{"id":22358892,"url":"https://github.com/imbus/robotframework-libdoc2testbench","last_synced_at":"2025-07-30T12:32:12.080Z","repository":{"id":40413603,"uuid":"342563733","full_name":"imbus/robotframework-libdoc2testbench","owner":"imbus","description":"Robot Framework Libdoc Extension that generate imbus TestBench Library import formats.","archived":false,"fork":false,"pushed_at":"2024-07-31T18:22:08.000Z","size":3991,"stargazers_count":32,"open_issues_count":2,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-25T12:53:32.176Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/imbus.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-02-26T12:04:54.000Z","updated_at":"2025-02-14T10:41:36.000Z","dependencies_parsed_at":"2023-11-27T10:28:34.459Z","dependency_job_id":"5daf9b40-d658-4642-bfbc-13d4de2e50b2","html_url":"https://github.com/imbus/robotframework-libdoc2testbench","commit_stats":{"total_commits":93,"total_committers":4,"mean_commits":23.25,"dds":"0.10752688172043012","last_synced_commit":"27930f22b441fde4b21917612d31ee740d91f404"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/imbus/robotframework-libdoc2testbench","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imbus%2Frobotframework-libdoc2testbench","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imbus%2Frobotframework-libdoc2testbench/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imbus%2Frobotframework-libdoc2testbench/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imbus%2Frobotframework-libdoc2testbench/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/imbus","download_url":"https://codeload.github.com/imbus/robotframework-libdoc2testbench/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/imbus%2Frobotframework-libdoc2testbench/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267596114,"owners_count":24113231,"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","status":"online","status_checked_at":"2025-07-28T02:00:09.689Z","response_time":68,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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-12-04T15:18:14.500Z","updated_at":"2025-07-30T12:32:11.635Z","avatar_url":"https://github.com/imbus.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Libdoc2TestBench\nRobot Framework Libdoc extension that generates imbus [TestBench Enterprise](https://www.imbus.de/en/testbench-enterprise) import formats.\nIt can be used to generate Testbench interactions and datatypes from Robotframework libraries.\n___\n\n### Installation:\n\nTo install this package you can use the following `pip` command:\n\n```bash\npip install robotframework-libdoc2testbench\n```\n\n*Notice: This extension requires Robot Framework 5.0.0 or later and does not work with earlier versions.*\n___\n### Usage:\n\nThere are three main use cases:\n* Import official Robot Framework librarys\n* Import custom Robot Framework librarys\n* Import Robot Framework resource files\n\n#### Import official Robot Framework librarys\n\n![LibDoc2TestBench command demo](res/example_usage.gif)\n\nFor the most basic usage you just have to pass a Robot Framework library as an argument to the ``Libdoc2TestBench`` command.\n``Libdoc2TestBench`` will create a zip-file with the name of the library in the current working directory. This zip-file can be imported to TestBench in order to use Robot Framework keywords from within TestBench.\n\n```bash\nLibdoc2TestBench \u003cLIBRARY\u003e\n```\nThe `\u003cLIBRARY\u003e` argument corresponds to the Robot Framework library name that you would use to import the library in the ``*** Settings ***`` of a robot/resource file.\nThe second positional argument can be used to specify the name of the generated zip-file:\n\n```bash\nLibdoc2TestBench \u003cLIBRARY\u003e \u003coutput.zip\u003e\n```\n\n#### Import the generated TestBench zip-file\nThe generated zip-file can be imported via the `Import Project...` command in the Project Management view of the imbus TestBench:\n\n![Import Project Demo](res/projectmanagement_view.gif)\n\nAfterwards you'll find your imported RF library, the different interactions and the datatypes in the Test Elements view:\n\n![Test Element View](res/test_element_view.png)\n\nThe imported Testelements can be copied into another testbench project. When copying, it is important that the test elements remain in the same subdivisions.\n\n#### Import custom robotframework librarys\n\nLibdoc2Testbench can also be used to import custom Robot Framework librarys.\n\nExample for a custom library:\n```python\nclass mycustomlibrary(object):\n    def print_hello_world(self):\n        print(\"Hello World\")\n```\n\nExample Libdoc2Testbench usage:\n\n```bash\nLibdoc2TestBench mycustomlibrary.py\n```\n\n#### Import Robot Framework resource files\n\nLibdoc2Testbench can also be used to import Robot Framework resource files.\n\nExample for a resource file:\n\n```robotframework\n*** Keywords ***\nprint hello world\n\tlog\tHello World\n```\n\nExample Libdoc2Testbench usage:\n\n```bash\nLibdoc2TestBench path/to/keywords.resource\n```\n\n#### Importing multiple librarys and resource files at once\n\nLibdoc2Testbench can be used to import multiple librarys and resource files at once. A special robot framework section is used for this use case.\n\nExample for a import List:\n\n```robotframework\n*** Import List ***\nBrowserLibrary\nBuiltIn\nmycustomlibrary.py\nmyresource.resource\n```\n\nExample Libdoc2Testbench usage:\n\n```bash\nLibdoc2TestBench importlist.robot\n```\n\n___\n### Command line arguments\nThere are several optional arguments, that follow the structure of the robot.libdoc module. When generating imports from a RF library, these values should already be set up correctly. You may overwrite the docformat and other meta data by setting the associated arguments written below.\n\n| Arguments \t| Description \t| Allowed Values \t|\n|-\t|-\t|-\t|\n| `-h`, `--help` | Show the help message and exit\n| `-a`, `--attachment` |  Defines if the resource file, which has been used to generate the interactions, will be attached to those interactions.\n| `-F FORMAT`, `--docformat FORMAT` \t| Specifies the source documentation format.  Possible values are Robot Framework's documentation format, HTML, plain text, and reStructuredText.  The default value can be specified in library source code and the initial default value is `ROBOT`. \t| `ROBOT` `HTML` `TEXT` `REST` \t|\n| `--libraryroot LIBRARYROOT`| Defines the subdivision name which contains the imported Robot Framework libraries. Default is ``RF``.\n| `--resourceroot RESOURCEROOT` |Defines the subdivision name which contains the imported Robot Framework resources. Default is ``Resource``.\n| `--libversion LIBVERSION` | Sets the version of the documented library or resource written in the description.\n| `--libname` \t| Sets the name of the documented library or resource. \t|  \t|\n| `-r REPOSITORY`, `--repository REPOSITORY`| Sets the repository id of the TestBench import. The default is `iTB_RF`.||\n| `-s SPECFORMAT`, `--specdocformat SPECFORMAT` \t| Specifies the documentation format used with XML and JSON spec files.  `RAW` means preserving the original documentation format and `HTML` means converting documentation to HTML.  The default is `HTML`. \t| `HTML` `RAW` \t|\n| `--version`, `--info` \t| Writes the Libdoc2TestBench, Robot Framework and Python version to console. \t|  \t|\n| `--library_name_extension` | Adds an extension to the name of an Robot Framework library subdivision in TestBench. Often used in combination with the `rfLibraryRegex` in `testbench2robotframework`.  Default is `[Robot-Library]`.||\n| `--resource_name_extension` | Adds an extension to the name of an Robot Framework resource subdivision in TestBench. Often used in combination with the `rfResourceRegex` in `testbench2robotframework`. Default is `[Robot-Resource]`.||\n| `--created_datatypes` | Option to specify if all Robot Framework datatypes should be created in TestBench (`ALL`), only the enum types (`ENUM`) or if no datatype should be created and only generic parameters are used (`NONE`). The default is `ALL`. ||\n___\n\n### Change log\n* 1.2\n    * Added library keyword return types with RobotFramework version \u003e= 7\n    * Added datatype creation options with default values\n    * Removed `--xml` cli option\n    * Removed `--temp` cli option\n* 1.1\n    * Added TestBench datatypes\n    * Added default values\n* 1.0rc2\n    * ADDED optional arguments for:\n        * xml-file output (instead of zip-file)\n        * custom temporary directory\n        * changing the repository id in the xml-header\n        * custom primary key enumeration start\n        * info command for printing Libdoc2TestBench/Robot Framework/Python version to console\n        * support for resource-files (attachment support coming soon)\n    * FIX:\n        * only create `_Datatype` subdivison in libraries when data types are present\n        * `Resource` subdivison is now in the correct parent subdivision\n        * Updated README.md / package help-messages to reflect changes\n* 1.0rc1\n    * first release candidate\n\n___\n### License\nDistributed under the [Apache-2.0 license](https://github.com/imbus/robotframework-libdoc2testbench/blob/main/LICENSE). See [LICENSE](LICENSE) for more information.\n___\n### Dependencies\n - python \u003e= 3.8\n - [robotframework](https://github.com/robotframework/robotframework) \u003e= 5.0.0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fimbus%2Frobotframework-libdoc2testbench","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fimbus%2Frobotframework-libdoc2testbench","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fimbus%2Frobotframework-libdoc2testbench/lists"}