Robotframework 如果字符串中存在双引号,如何比较Robot框架中的两个变量

Robotframework 如果字符串中存在双引号,如何比较Robot框架中的两个变量,robotframework,Robotframework,在我的测试用例中,我试图比较 '不支持内容类型“application/pdf” 他是否在场 这是我得到的错误: 计算表达式的“内容类型”应用程序/pdf不可用 支持“!=“”失败:语法错误:无效语法(,第行) (一) 我的关键字表达式是: Run Keyword If "${failure_message}" != "${EMPTY}" My Click Element id=btn_import_cancel Robot允许您通过省略大括号在表达式中使用变量而不使用引号 run k

在我的测试用例中,我试图比较

'不支持内容类型“application/pdf”

他是否在场

这是我得到的错误:

计算表达式的“内容类型”应用程序/pdf不可用 支持“!=“”失败:语法错误:无效语法(,第行) (一)

我的关键字表达式是:

Run Keyword If  "${failure_message}" != "${EMPTY}"   My Click Element  id=btn_import_cancel

Robot允许您通过省略大括号在表达式中使用变量而不使用引号

run keyword if  $failure_message != "" My Click Element  id=btn_import_cancel

有关详细信息,请参阅内置库文档中的。

您可以将变量放在三个引号中-在python中称为字符串文字,它可以包含几乎所有没有问题的字符-双引号、
\n
等。
您的案例示例:

Run Keyword  If  """${failure_message}""" != "${EMPTY}"   My Click Element  id=btn_import_cancel 
# ${EMPTY} is a RF builtin variable, shortcut for an empty string - not needed here, but I guess it helps with the case's readability 
在最初的方法中,RF替换了
${failure\u message}
的值,并且由于它有双引号字符,因此有效地在中间关闭了封闭的引号-这里:
“Content type”应用程序

,将
{application}
保留在字符串之外,并“使其”成为python表达式的操作数