如果我将从 db 获取的索引号存储在变量中并在按索引从列表中选择时使用,m 得到错误作为预期的字符串,int found-Robot Framework

Posted

技术标签:

【中文标题】如果我将从 db 获取的索引号存储在变量中并在按索引从列表中选择时使用,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 【发布时间】:2021-11-20 13:47:04 【问题描述】:

enter image description here

select from list by index  $locator_var   $inp_msge_type

--getting error as expected string, int found

select from list by index  $locator_var   7

-----没有任何错误

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

【问题讨论】:

也许尝试在之前打印值 $inp_msge_type 并在执行时检查它的确切位置 @PaulJames 请检查我的截图 【参考方案1】:

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


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

当你调用它时

Select From List By Index    $locator_var   7

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

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

$inp_msge_type=    Convert To String    $inp_msge_type

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

【讨论】:

谢谢你:) 它正在工作

以上是关于如果我将从 db 获取的索引号存储在变量中并在按索引从列表中选择时使用,m 得到错误作为预期的字符串,int found-Robot Framework的主要内容,如果未能解决你的问题,请参考以下文章

如何将简单的 SQL 查询存储到用户定义的变量中并在 MySQL 中执行?

将分隔字符串拆分为存储过程中的变量[重复]

如何从存储在文件中的表中获取特定索引

将字符串数组存储在类成员函数中并返回

oracle从plsql中获取变量回linux

将 AS2 SWF 加载到 AS3 SWF 中并在 URL 中传递变量