如何测试 Robot Framework 中的字符串变量是否为空?

2 string is-empty robotframework

如何测试 Robot Framework 中的字符串变量是否为空?

我的第一次幼稚尝试是这样的:

Run Keyword If  ${myVar}!=${EMPTY}
Run Code Online (Sandbox Code Playgroud)

但它失败了:

评估表达式 '!=' 失败:语法错误:解析时意外的 EOF(,第 1 行)

然后我在 Github 上发现了这个问题,但它没有提出解决方案,只是错误信息不清楚。此处提出另一种解决方案:

${length}=    Get Length    ${Portfolio_ste}
Run Keyword If    ${length}    Go To Edit Portfolio
Run Code Online (Sandbox Code Playgroud)

但这真的是最佳实践吗?

(上下文是我使用了一个变量参数列表,如果某个变量包含一个值,应该做一些事情,否则就忽略它)

Bry*_*ley 6

表达式必须是变量替换后的有效 python 表达式。暂时假设myVar可能类似于数字 42,您的表达式在替换后最终将如下所示:

Run Keyword if  42!=
Run Code Online (Sandbox Code Playgroud)

与空字符串进行比较时,您需要添加引号以确保表达式在替换后是正确的 Python 表达式。例如:

Run Keyword If  "${myVar}"!="${EMPTY}"
Run Code Online (Sandbox Code Playgroud)