1

我在 python 中使用机器人框架来创建内部使用 selenium2library 关键字的关键字。

我在以下代码中看到了一个问题,该问题存在于我的 python 关键字定义模块中。

status = BuiltIn().run_keyword_and_continue_on_failure(sel.click_button('wlbasic_11n_value_01'))

这里,lbasic_11n_value_01 是要点击的元素的id。

即使此单击按钮失败,我也希望我的关键字能够执行,因此我使用 run_keyword_and_continue_on_failure 关键字。

有趣的是,点击了按钮,但随后我看到一条错误消息,指出关键字名称应该是一个字符串。

什么时候制作 sel.click_button('wlbasic_11n_value_01') -> 'sel.click_button('wlbasic_11n_value_01')'

python关键字代码->

def check():
    sel = BuiltIn().get_library_instance('Selenium2Library')
    title = sel.get_title()
    BuiltIn().log_to_console('Making the Router Mode Change Now')
    status =      BuiltIn().run_keyword_and_continue_on_failure(sel.click_button('wlbasic_11n_value_01'))

该关键字根本没有被检测到,点击永远不会起作用。

我在这里缺少什么,我是机器人框架的新手。

任何调试帮助将不胜感激。

4

1 回答 1

1

有趣的是,点击了按钮,但随后我看到一条错误消息,指出关键字名称应该是一个字符串。

该消息正在告诉您确切的问题是什么,为什么您忽略它告诉您的内容?run_keyword_and_continue_on_failure需要关键字的字符串名称,并且您正在向它传递一个函数 ( sel.click_button(...))。

没有必要使用run_keyword_and_continue_on_failure- 只需在代码周围放置一个 try/except ,这将完成同样的事情:

try:
    sel.click_button('wlbasic_11n_value_01')
except Exception as e:
    <handle or ignore the error however you wish here...>

If you prefer to continue to use run_keyword_and_continue_on_error, do what it says and provide the keyword as a string:

status =      BuiltIn().run_keyword_and_continue_on_failure(
    'Click Button', 'wlbasic_11n_value_01')
)
于 2016-10-23T13:40:09.313 回答