Robot Framework中SikuliLibrary Click Region传坐标列表报错求助
问题原因及解决方法
问题根源
- 变量引用错误:你在定义列表时使用了
${344}和${730},这是Robot Framework的变量引用语法,但并未提前定义这两个变量,导致列表元素实际是未解析的字符串占位符,而SikuliLibrary的Click Region需要整数类型的坐标,类型不匹配触发报错。 - 参数类型不兼容:
Get Image Coordinates返回的是Sikuli原生的Location对象,完全符合Click Region的参数类型要求;而你自行创建的普通列表并非Sikuli的合法对象,传递时会导致Java层接收参数时出现类型不匹配。
解决方法
方法一:直接传递整数坐标
无需列表,直接传入两个整数参数即可:
*** Test Cases *** tryy4 *** Keywords *** tryy4 SikuliLibrary.Click Region 344 730
方法二:正确定义并展开坐标列表
确保列表元素是整数数值,调用时通过@{}语法将列表展开为两个独立参数:
*** Variables *** @{first_coordinates} 344 730 *** Test Cases *** tryy4 *** Keywords *** tryy4 SikuliLibrary.Click Region @{first_coordinates}
方法三:创建Sikuli原生Location对象传递
使用SikuliLibrary提供的Create Location关键字生成合法的坐标对象,再传递给Click Region:
*** Test Cases *** tryy4 *** Keywords *** tryy4 ${location} SikuliLibrary.Create Location 344 730 SikuliLibrary.Click Region ${location}
内容的提问来源于stack exchange,提问作者Noob_Testautomation
相关产品推荐
相关产品推荐

