在 If / Else 语句中将文本存储到标量中 - Robot Framework
Store Text into an Scalar within If / Else Statement - Robot Framework
我想在 Robot Framework 中完成以下内容
我想将元素 xpath://*[@id="plsAttachGrid_0_1"]
中的文本存储到标量 ${name3}
中,但是,该元素在网页上并不总是可用,因此,我需要 运行 IF/ELSE 语句,以避免在元素不可用时出现错误
我的想法如下:
${countt2}= Get Element Count xpath://*[@id="plsAttachGrid_0_1"]
Run Keyword If ${countt2}>0
${name3}= Get Text xpath://*[@id="plsAttachGrid_0_1"]
ELSE LOG NO_FILE
但是,我了解到无法在 Run Keyword If
内存储到标量中,因为它需要 Keyword
.
因此,我该如何完成?
Run Keyword If
中的关键字可以 return 向上传播的值 - 例如可以赋值给放在Run Keyword If
之前的变量;所以在你的情况下:
${name3}= Run Keyword If ${countt2}>0 Get Text xpath://*[@id="plsAttachGrid_0_1"]
所以现在 ${name3}
将在 ${countt2}>0
时具有 Get Text
的 return 值。
如果不满足条件,它的价值是多少?它将是 None
(数据类型,而不是字符串),因为变量现在已声明,但未明确定义。
在这种情况下,您可以将其设置为不同的值,以便稍后在代码中更轻松地处理它:
${name3}= Run Keyword If ${countt2}>0 Get Text xpath://*[@id="plsAttachGrid_0_1"]
... ELSE Set Variable not_set # or [=11=], or any other value you need for ${countt2}<=0
我想在 Robot Framework 中完成以下内容
我想将元素 xpath://*[@id="plsAttachGrid_0_1"]
中的文本存储到标量 ${name3}
中,但是,该元素在网页上并不总是可用,因此,我需要 运行 IF/ELSE 语句,以避免在元素不可用时出现错误
我的想法如下:
${countt2}= Get Element Count xpath://*[@id="plsAttachGrid_0_1"]
Run Keyword If ${countt2}>0
${name3}= Get Text xpath://*[@id="plsAttachGrid_0_1"]
ELSE LOG NO_FILE
但是,我了解到无法在 Run Keyword If
内存储到标量中,因为它需要 Keyword
.
因此,我该如何完成?
Run Keyword If
中的关键字可以 return 向上传播的值 - 例如可以赋值给放在Run Keyword If
之前的变量;所以在你的情况下:
${name3}= Run Keyword If ${countt2}>0 Get Text xpath://*[@id="plsAttachGrid_0_1"]
所以现在 ${name3}
将在 ${countt2}>0
时具有 Get Text
的 return 值。
如果不满足条件,它的价值是多少?它将是 None
(数据类型,而不是字符串),因为变量现在已声明,但未明确定义。
在这种情况下,您可以将其设置为不同的值,以便稍后在代码中更轻松地处理它:
${name3}= Run Keyword If ${countt2}>0 Get Text xpath://*[@id="plsAttachGrid_0_1"]
... ELSE Set Variable not_set # or [=11=], or any other value you need for ${countt2}<=0