Robot Framework在自定义库中找不到自定义关键字

时间:2018-08-06 09:30:32

标签: python robotframework

我尝试通过继承selenium2library使用自定义关键字。 我已经在.py文件中定义了这个关键字:


from Selenium2Library import Selenium2Library
class TestLibrary(Selenium2Library):
    def storm_click(self, locator):
        submit_button = self._current_browser().find_element_by_class_name(locator)
        submit_button.click()

我已使用“库导入”在我的.robot测试文件中导入了此自定义关键字:

*** Settings ***

Library  TestLibrary.py

执行机器人时

 robot tests/livestorm.robot 

我遇到了这个问题:

  

未找到名称为“风暴点击”的关键字。

您有什么想法可以解释为什么机器人框架找不到我的自定义关键字吗?

1 个答案:

答案 0 :(得分:1)

您显然正在使用SeleniumLibrary的版本3或更高版本。根据{{​​3}},您必须使用@keyword装饰器才能将方法识别为关键字:

...
from SeleniumLibrary.base import keyword
...
class TestLibrary(Selenium2Library):
    @keyword
    def storm_click(...):
        ...