我尝试通过继承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
我遇到了这个问题:
未找到名称为“风暴点击”的关键字。
您有什么想法可以解释为什么机器人框架找不到我的自定义关键字吗?
答案 0 :(得分:1)
您显然正在使用SeleniumLibrary的版本3或更高版本。根据{{3}},您必须使用@keyword
装饰器才能将方法识别为关键字:
...
from SeleniumLibrary.base import keyword
...
class TestLibrary(Selenium2Library):
@keyword
def storm_click(...):
...