如果我将从 db 中获取的索引号存储在变量中并按索引从列表中使用 select,m 会按照预期的字符串出现错误,int found-Robot Framework

If i store index number fetched from db in variable & using in select from list by index, m getting err as expected string, int found-Robot Framework

enter image description here

select from list by index  ${locator_var}   ${inp_msge_type}

--如预期字符串得到错误,找到整数

select from list by index  ${locator_var}   7

-----没有收到任何错误

${inp_msge_type}----contains 7 from DB query 结果存储在这个变量中,为了避免硬编码我们需要这样做 有没有办法写

不要 添加指向代码屏幕截图或错误消息的链接,并相应地格式化代码片段 - 使用 `(勾号)符号将它们包围起来。


现在我们已经过去了,你的问题是关键字 Select From List By Index 期望索引参数的类型是字符串。

你调用它的时候

Select From List By Index    ${locator_var}   7

,那个“7”实际上是一个字符串(虽然它看起来像一个数字),因为这是框架在任何类型的文本上的默认值。所以它有效。

当您从数据库中获取值时,它是数据库存储它的类型;可能 table 模式说它是 int。所以现在你将一个 int 传递给关键字 - 但它失败了。 修复很简单 - 只需将变量转换(转换)为字符串类型:

${inp_msge_type}=    Convert To String    ${inp_msge_type}

,现在可以像以前一样调用关键字了