为列表创建一个空元素,并用"应该是真的"关键词。但不适合创建空变量。为什么?代码:
${list1} Create List ${EMPTY}
${list2} Set Variable ${EMPTY}
Should Be True ${list1} Create empty list
Should Be True ${list2} Set empty variable
日志:
20211225 14:24:58.913:信息:${list1}=〔''〕
20211225 14:24:58.916:TRACE:参数:"]
20211225 14:24:58.916:跟踪:返回:">
20211225 14:24:58.917:信息:${list2}=
20211225 14:24:58.918:TRACE:参数:[['']|'创建空列表']
20211225 14:24:58.918:TRACE:返回:无
20211225 14:24:58.919:TRACE:参数:["|"设置空变量"]
20211225 14:24:58.920:失败:计算表达式"失败:ValueError:表达式不能为空。
这有点违反直觉,因为${list1} Create List ${EMPTY}
不是创建一个空列表,而是创建一个内部有空元素的列表,例如['']
,而${list2} Set Variable ${EMPTY}
将创建一个空白变量,例如''
。这就是Should Be True
在列表上传递(列表不为空(但在变量上失败(变量为空(的原因。
下面的代码举例说明了这些情况:
# empty_list == []
${empty_list} = Create List
log to console ${empty_list}
should be empty ${empty_list}
# empty_list_1 == ['']
${empty_list_1} = Create List ${EMPTY}
log to console ${empty_list_1}
should not be empty ${empty_list_1}
# empty_var == '' (empty string with length 0)
${empty_var} = Set Variable
log to console ${empty_var}
should be empty ${empty_var}
# empty_var_1 == '' (empty string with length 0)
${empty_var_1} = Set Variable ${EMPTY}
log to console ${empty_var_1}
should be empty ${empty_var_1}