Skip to main content

Robot Framework Internationalization

Project description

license

Robot Framework Localization Helper

A python library and CLI to help testers to internationalize and localize robot test cases.

Installation

robotLocalization can be installed with pip/pipenv:

pip install robotLocalization
pipenv install robotLocalization

Usage

robotLocalization can be used in two modes as a get_variables function or a CLI. The get_variables function can be used in the robot test case to load strings from properpties files by providing a language fallback mechanism. robotLocalization CLI provides functionalities to help testers to internationalize test cases.

# resources/sample.properties
msg = Hello, World!
# resources/sample_ja.properties
msg = みなさんこんにちは!
#   sample.robot
#
#   $ robot --variable language:en sample.robot
#   $ robot --variable language:ja sample.robot
#
*** Settings ***
Library     SeleniumLibrary
Variables   robotLocalization     ${LANGUAGE}    resources/sample.properties    verbose=True

*** Variables ***
${LANGUAGE}              en     # default LANGUAGE.  This can be replaced by --variable option.

*** Test Cases ***
Test Case 1
    [Documentation]    robotLocalization Sample
    Log To Console     ${msg}
    Log Variables

Getting variables from get_variables function

robotLocalization provides get_variabes function which can be specified in the robot Variables statement.

Syntax in robot test

Variables robotLocalization localeId path or file list pathOptions

localeId specifies the locale or language of the properties being used. It is used to load strings from properties files in the properties files in the specified path list or files. If specified locale is not available, English propereties will be used.

pathOptions

verbose= True or False filetype= file type

Examples

Variables robotLocalization en ${PROJECT_REPO_PATH}

Accessing variables from robot code.

Internationalization Helper CLI

The robotLocalization CLI helps tests to internationalize robot test cases.

robotLocalization operand file_patterns language-list

Analyze Mode

In the analyze mode, robotLocalization CLI reports the localizable strings in robot test and cadicases of available strings in existing properties files from properties files in the specified path list.

robotLocalization [*path list()] --analyze [*robot_file*]
–analyze

Specifies a robot test case. Typically, this robot file contains Xpath specifications with UI elements or robot variable specifications used in other keywords.

Extract Mode

The extract mode is used to extract strings from a specified robot file. It also generates internationalized robot files by replacing localizable strings with variables references.

–extract

Specifies a robot test case to extract strings.

–output_bundle

Specifies a bundle file which can be used to store product properties into a single file. This options is only valid if –use_bundle option is enaled.

–output_properties

Specifies a properties file to store localizable strings. If –use_bundle is specified, only strings not available in product properties files are stored.

–output_robot|–outr

Specifies a robot file by internationalizing the robot file specifeid wit –extract option. All localizable strings will be replaced by variable references. A string with “# i18n:OK ” comments are ignored.

–use_bundle|–use_keys

–use_bundle options checks the availablity of strings in the specified product properties files. If found, it uses strings there.

Dump Mode

–dump

–dump option generates list all the variables loaded from properties files.

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

robotLocalization-0.9.1.tar.gz (18.7 kB view hashes)

Uploaded Source

Built Distribution

robotLocalization-0.9.1-py3-none-any.whl (24.7 kB view hashes)

Uploaded Python 3

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