Skip to main content

This package together with the JsonPreprocessor package provides functionality to manage Robotframework testsuites

Project description

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

ROBFW TESTSUITES MANAGEMENT DOCUMENTATION

This is the documentation for robotframework-testsuitesmanagement repository

Getting Started

The RobotFramework_Testsuites package works together with JsonPreprocessor python package to provide the enhanced features such as json configuration files, 4 different levels of configuation, config object and global params, schema validation,...

How to install

Firstly, clone RobotFramework_Testsuites repository to your machine

git clone https://github.com/test-fullautomation/robotframework-testsuitesmanagement.git

Go to robotframework-testsuitesmanagement, using the 2 common commands below to build or install this package:

setup.py build      will build the package underneath 'build/'
setup.py install    will install the package

After the build processes are completed, the package is located in build/, and the documents are located in doc/_build/.

We can use --help to discover the options for build command, ex:

setup.py build      will build the package underneath 'build/'
setup.py install    will install the package

Global options:
--verbose (-v)      run verbosely (default)
--quiet (-q)        run quietly (turns verbosity off)
--dry-run (-n)      don't actually do anything
--help (-h)         show detailed help message
--no-user-cfg       ignore pydistutils.cfg in your home directory
--command-packages  list of packages that provide distutils commands

Information display options (just display information, ignore any commands)
--help-commands     list all available commands
--name              print package name
--version (-V)      print package version
--fullname          print <package name>-<version>
--author            print the author's name
--author-email      print the author's email address
--maintainer        print the maintainer's name
--maintainer-email  print the maintainer's email address
--contact           print the maintainer's name if known, else the author's
--contact-email     print the maintainer's email address if known, else the
                    author's
--url               print the URL for this package
--license           print the license of the package
--licence           alias for --license
--description       print the package description
--long-description  print the long package description
--platforms         print the list of platforms
--classifiers       print the list of classifiers
--keywords          print the list of keywords
--provides          print the list of packages/modules provided
--requires          print the list of packages/modules required
--obsoletes         print the list of packages/modules made obsolete

usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
 or: setup.py --help [cmd1 cmd2 ...]
 or: setup.py --help-commands
 or: setup.py cmd --help

Features

ROBFW project is configured with json files

Together with JsonPreprocessor package, RobotFramework_Testsuites supports configuring ROBFW automation test project with json files which allow user adds the comments, imports params from other json files. Adding comments and importing json files are enhanced features which are developed and documented in JsonPreprocessor python package.

RobotFramework_Testsuites management difines 4 different configuration levels, from level 1 -> level 4, Level 1 is highest priority, and level 4 is lowest priority:

Level 1: Load configuration file while executing robot testsuite by command

User can address the json configuration file when executing robot testsuite with input parameter --variable config_file:" <path_to_json_file>"

Ex: robot --variable config_file:"<path_to_json_file>" <path_to_testsuite>

Level 2: In case project have many variants, it reads from json file's content to select the corresponding variant configuration

In level 2 configuration, user has to create a json file which contains different variants point to different configuration files. For example, we create the variants_cfg.json with content below:

{
  "default": {
    "name": "<default_cfg_file>",
    "path": "<path>"
  },
  "variant_0": {
    "name": "<file_name_variant_0>",
    "path": "<path>"
  },
  "variant_1": {
    "name": "<file_name_variant_1>",
    "path": "<path>"
  },
  "variant_2": {
    "name": "<file_name_variant_2>",
    "path": "<path>"
  }
}

User can set configuration level 2 only in testsuite like below:

*** Settings ***
Library      RobotFramework_Testsuites    WITH NAME    testsuites
Suite Setup      testsuites.testsuite_setup    <Path_to_the_file_variants_cfg.json>

Level 3: Find the config/ folder in testsuite directory, if the config folder is found, it will load configuration file in this folder

If there is the configuration file have the same name with testsuite file (ex: abc.rotbot & ./config/abc.json), then it will load this configuration file. If the first case doesn't occur, it will load the configuration file ./config/robot_config.json. In case these 2 cases are not matched, it will load the configuration level 4 (default and lowest priority)

Level 4: Lowest priority level, it reads default configuration file

The default configuration file (robot_config.json) in installation directory:

python39\Lib\site-packages\RobotFramework_Testsuites-0.1.0-py3.9.egg\RobotFramework_Testsuites\Config\robot_config.json

Dotdict features

User can access dictionary object in robot test script by called ${dict}[abc][def] or ${dict.abc.def}

Note: In case a parameter name contains a ".", then we could not use dotdict but the traditional way ${dict}[abc][def] is still working.

Package Documentation

A detailed documentation of the Python Extensions Collection package can be found here: RobotFramework-Testsuites.pdf

Feedback

To give us a feedback, you can send an email to Thomas Pollerspöck or RBVH-ECM-Automation_Test_Framework-Associates

About

Maintainers

Thomas Pollerspöck

Contributors

Mai Dinh Nam Son

Tran Duy Ngoan

Nguyen Huynh Tri Cuong

Tran Hoang Nguyen

Holger Queckenstedt

License

Copyright 2020-2022 Robert Bosch GmbH

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

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-testsuitesmanagement-0.5.1.tar.gz (25.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file robotframework-testsuitesmanagement-0.5.1.tar.gz.

File metadata

  • Download URL: robotframework-testsuitesmanagement-0.5.1.tar.gz
  • Upload date:
  • Size: 25.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.0

File hashes

Hashes for robotframework-testsuitesmanagement-0.5.1.tar.gz
Algorithm Hash digest
SHA256 662fc3651f246dcdbbece8194a447c1a2802bf8a7361bc5b1182ecb7832c0667
MD5 b65f9f869036bb24f0c2d751dd6507ee
BLAKE2b-256 6c7084977ff5d9447bd0a0f1198bf28e0ae04b81b733b3bb133d0535fd241c79

See more details on using hashes here.

File details

Details for the file robotframework_testsuitesmanagement-0.5.1-py3-none-any.whl.

File metadata

  • Download URL: robotframework_testsuitesmanagement-0.5.1-py3-none-any.whl
  • Upload date:
  • Size: 29.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.0

File hashes

Hashes for robotframework_testsuitesmanagement-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 da948d100e5d5937ab2089cba60d6cf8c6bcecc8a99ab3e3f5e1cef82106437d
MD5 361d5f3fbf7c073447d86c8b170cfaba
BLAKE2b-256 f68fdbc868600e6f822ef79f66400cba233003fd0ecadb459a8ec0192277698a

See more details on using hashes here.

Supported by

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