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 robotframework-localization
pipenv install robotframework-localization

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 xpt command helps testers 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.

–multi_trans

–multi_trans options checks the translated value for locales specified with –bundle_locale option and checks the multiple translations. If variant translation found, it extends the Xpath expression to use “OR” condition to use all of the variant translations.

–playwright

–playwright options checks the css/xpath specification for Playwright when externalizing the robot variables. This option is useful when robot Framework is used with the Playwright for Python.

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

robotframework-localization-0.10.11.tar.gz (20.6 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file robotframework-localization-0.10.11.tar.gz.

File metadata

File hashes

Hashes for robotframework-localization-0.10.11.tar.gz
Algorithm Hash digest
SHA256 8b949949c95ec46c0baba6cd6b258ec23f601b309b2282ff848c07019d6c84bf
MD5 4ff62f55591964131893886162a946fd
BLAKE2b-256 e893e8916a673ec4e807e7fa53a6629ffafa46248df73b3da05fe45b9fe469d2

See more details on using hashes here.

File details

Details for the file robotframework_localization-0.10.11-py3-none-any.whl.

File metadata

File hashes

Hashes for robotframework_localization-0.10.11-py3-none-any.whl
Algorithm Hash digest
SHA256 715ae0072e264ad02e604f0e08deb8f0c5359f83061f24c9de490ae17b264374
MD5 9a5f063d33a617b47e17cd6fb12d813c
BLAKE2b-256 fca080690d47ed6fa8b8d70a29df40e368f2384f79a8090fdbe70d6d52197bd8

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