- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是机器人框架的新手,并继承了一些调用一些 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/
我是一名优秀的程序员,十分优秀!