gpt4 book ai didi

python - 如何将 bool 变量从机器人框架传递给 python 函数

转载 作者:行者123 更新时间:2023-12-05 03:42:45 26 4
gpt4 key购买 nike

我是机器人框架的新手,并继承了一些调用一些 python 函数的 .robot 文件。

在 .robot 文件中,我们定义了一些变量:

| *** Variables ***  |
| ${file} | 2021
| ${useV2} | False

然而,当调用 python 函数并运行此代码时:

log.info(f"{useV2} , 类型: {type(useV2)}")

输出是

False , type: <class 'str'>

如果没有检查此函数中的“False”和“True”,以及需要的后续函数,我该如何将机器人框架变量设置为 bool 值并让 Python 准确导出 true/false?

最佳答案

两个选项 - 要么使用语法将其声明为实际的 bool 类型:

${useV2}           ${False} 

(这也适用于声明整数或 float ),或使用关键字 Convert To Boolean ,处理字符串“True”和“False”:

${useV2}=    Convert To Boolean    ${useV2}

用户指南中讨论此变量语法的部分 - http://robotframework.org/robotframework/latest/RobotFrameworkUserGuide.html#boolean-and-none-null-variables ;整数/ float 在上面的部分中进行了描述。


这是一个示例;使用此 RobotFramework 代码:

*** Variables ***
${booly} ${True}
${stringy} True

*** Test Cases ***
A test
Do It ${booly}
Do It ${stringy}
${cast to booly}= Convert To Boolean ${stringy}
Do It ${cast to booly}

,以及这个 python 函数:

from robot.libraries.BuiltIn import BuiltIn

def do_it(useV2):
BuiltIn().log_to_console(f"{useV2} , type: {type(useV2)}")

,控制台输出为:

True , type: <class 'bool'>
True , type: <class 'str'>
True , type: <class 'bool'>

例如变量定义为 ${True}<class 'bool'> , 一个定义为 True<class 'str'> ,以及经过 Convert To Boolean 后的后期变成 bool本身。

关于python - 如何将 bool 变量从机器人框架传递给 python 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67102889/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com