如何在机器人框架中动态导入变量文件

问题描述 投票:0回答:3

我正在研究机器人框架。我里面有两个变量文件。我想动态传递这些变量文件。在某些情况下我想发送 a.py,在其他情况下我想发送 b.py。但我想动态传递这些信息。 你能帮我解决这个问题吗

python robotframework
3个回答
6
投票

您可以使用导入库关键字手动导入外部文件。

然后使用 Run Keyword If 关键字检查要导入的库。例如:

Run Keyword If   '${VAR}' == 'a'   Import Library   a.py
Run Keyword If   '${VAR}' == 'b'   Import Library   b.py

您可以将

VAR
作为参数传递给您的测试:

pybot --variable VAR:a TestSuite

0
投票

您可以根据执行期间传递的变量导入文件

*** Settings ***
Variables    config_${TEST_ENVIRONMENT}.yaml

*** Test Cases ***

*** Keywords ***

机器人要执行的命令:

$ robot --variable TEST_ENVIRONMENT:local file_name.robot

0
投票

最简单直接的方法是在 Python 文件中声明所有变量。例如:

#usbconf.py
target_port="COM29"
target_baudrate=115200

然后将此 usbconf.py 文件导入到目标机器人文件中,如下所示:

#test_uart.robot
*** settings ***
Library    SerialLibrary
Library    SeleniumLibrary
Variables    usbconf.py

*** Variables ***

${response}    0A

*** test cases ***
Test UART Device
    [Documentation]    Test Serial Connection
    [Setup]    Add Port    ${target_port}    timeout=30  encoding=ascii  baudrate=${target_baudrate}  bytesize=8
    Open Port   ${target_port}
    Log To Console    ${target_port}
    Port Should Be Open

附加说明:您应该将这两个文件放在同一文件夹中。

© www.soinside.com 2019 - 2024. All rights reserved.