Skip to main content

Robot Framework Libdoc Extension that generates imbus TestBench Library import formats.

Project description

Libdoc2TestBench

Robot Framework Libdoc Extension that generates imbus TestBench Enterprise Library import formats. It can be used to generate Testbench interactions from Robotframework keywords.


Installation:

To install this package you can use pip:

pip install robotframework-libdoc2testbench

Notice: This extension requires Robot Framework 4.0.0 or later and does not work with earlier versions.


Usage:

There are four main use cases:

  • Importing official robotframework librarys
  • Importing custom robotframework librarys
  • Importing resource files
  • Importing multiple librarys and resource files at once

Importing official robotframework librarys

LibDoc2TestBench command demo

The basic usage just needs the Libdoc2TestBench command and a Robot Framework Library as input and saves a zip-file named project-dump.zip in the current working directory containing the needed information for the import.

Libdoc2TestBench <LIBRARY>

<LIBRARY> corresponds to the name that you would use to import the library into a robot framework file. Browser is an example for <LIBRARY>. By using a second positional argument you can additionally specify the output filename:

Libdoc2TestBench <LIBRARY> <output.zip>

Afterwards the generated zip-file can be imported via the Import Project... command in the Project Management view of the imbus TestBench:

Import Project Demo

In the Test Elements view you can now see your imported RF library as different interactions and datatypes:

Test Element View

The imported Testelements can be copied into another testbench project. When copying, it is important that the test elements remain in the same subdivisions. The name of the root subdivision can be renamed with the --libraryroot option.

Importing custom robotframework librarys

Libdoc2Testbench can be used to import your own robotframework librarys.

Example for a custom library:

class mycustomlibrary(object):
    def print_hello_world(self):
        print("Hello World")

Example Libdoc2Testbench usage:

Libdoc2TestBench mycustomlibrary.py

Importing resource files

Libdoc2Testbench can be used to import resource files.

Example for a resource file:

*** Keywords ***
print hello world
  log Hello World

Example Libdoc2Testbench usage:

Libdoc2TestBench -a myresource.resource

Importing multiple librarys and resource files at once

Libdoc2Testbench can be used to import multiple librarys and resource files at once. A special robot framework section is used for this use case.

Example for a import List:

*** Import List ***
BrowserLibrary
BuiltIn
mycustomlibrary.py
myresource.resource

Example Libdoc2Testbench usage:

Libdoc2TestBench -a importlist.robot

Command line arguments

There 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.

Arguments Description Allowed Values
-h, --help show the help message and exit
-a, --attachment Defines if a resource file will be attached to all interactions.
-F FORMAT, --docformat FORMAT 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. ROBOT HTML TEXT REST
--libraryroot LIBRARYROOT Defines which subdivision name contains libraries.
--libversion LIBVERSION Sets the version of the documented library or resource written in the description.
-n NAME, --name NAME Sets the name of the documented library or resource.
-r REPOSITORY, --repository REPOSITORY Sets the repository id of the TestBench import. The default is itba.
--resourceroot RESOURCEROOT Defines which subdivision name contains resources.
-s SPECFORMAT, --specdocformat SPECFORMAT 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. HTML RAW
-t TEMP, --temp TEMP Path to write temporary files to.
-x, --xml Writes a single xml-file instead of the zipfile.
--version, --info Writes the Libdoc2TestBench, Robot Framework and Python version to console.

Change log

  • 1.0rc2
    • ADDED optional arguments for:
      • xml-file output (instead of zip-file)
      • custom temporary directory
      • changing the repository id in the xml-header
      • custom primary key enumeration start
      • info command for printing Libdoc2TestBench/Robot Framework/Python version to console
      • support for resource-files (attachment support coming soon)
    • FIX:
      • only create _Datatype subdivison in libraries when data types are present
      • Resource subdivison is now in the correct parent subdivision
      • Updated README.md / package help-messages to reflect changes
  • 1.0rc1
    • first release candidate

License

Distributed under the Apache-2.0 license. See LICENSE for more information.


Dependencies


Contributing

Code style: black For consistent code formatting, please use Black - The Uncompromising Code Formatter with the following arguments in the root directory:

black -l 100 -S .

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

robotframework-libdoc2testbench-1.2b2.tar.gz (17.3 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file robotframework-libdoc2testbench-1.2b2.tar.gz.

File metadata

  • Download URL: robotframework-libdoc2testbench-1.2b2.tar.gz
  • Upload date:
  • Size: 17.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.0

File hashes

Hashes for robotframework-libdoc2testbench-1.2b2.tar.gz
Algorithm Hash digest
SHA256 687942d51a85ffffc2772b26a8348cd44bb1437498fe537372fad4a56797233a
MD5 f4ec86054953386edf53eb1a28259645
BLAKE2b-256 0342a298fc8d656609098c51eb33be4212aee4221be6b2fd2fdcf521350b6bda

See more details on using hashes here.

File details

Details for the file robotframework_libdoc2testbench-1.2b2-py3-none-any.whl.

File metadata

  • Download URL: robotframework_libdoc2testbench-1.2b2-py3-none-any.whl
  • Upload date:
  • Size: 17.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.0

File hashes

Hashes for robotframework_libdoc2testbench-1.2b2-py3-none-any.whl
Algorithm Hash digest
SHA256 b1d47fd71aa7980387e0affa399da97fd718f3c780eeb4acedae0ee04e33f3cf
MD5 3734f4b5bcb06abd06dbf22fba152999
BLAKE2b-256 9c385ef1114fcd88bd375511ba0fe0a8826271dd913de4b5a606c124e17a10cb

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page