我已经创建了一个python代码来初始化chrome浏览器,并且我想将此驱动程序实例传递给Robot Framework,以便RF的关键字可以在此实例上工作。请让我知道我怎么能这样做。 为intializing文件的PY代码:机器人框架:如何在Robot框架中使用用户创建的浏览器实例
'class SeleniumKeywords:
ROBOT_LIBRARY_SCOPE = 'GLOBAL'
def __init__(self):
self.driver = None
def open_browser(self, browser="chrome"):
driver_class = drivers[browser]
self.driver = driver_class()
def go_to(self, url):
self.driver.get(url)'
现在机器人的框架使用它时,浏览器打开,但RF关键字就可以了(selenium2library关键字)不起作用。基本上我使用自定义关键字打开浏览器实例,并最大限度地使用RF中的selenium2library关键字。不幸的是,它不起作用。请让我知道如何将这种浏览器实例传递给RF:
'*** Settings ***
Library ExtendedSelenium2Library
Library ../Resources/SeleniumKeywords.py
Resource ../Global/GlobalConfig.robot
*** Test Cases ***
Reuse Session ID
SeleniumKeywords.Open Browser chrome
maximize browser window
SeleniumKeywords.Go To ${URL} '
的最大化浏览器窗口是一个RF关键词,我想这对我的browserinstance工作
有你创建自己的驱动程序,而不是使用'ExtendedSelenium2Library'创建的驱动程序的理由?为什么不让你的代码使用由'ExtendedSelenium2Library'打开的代码而不是其他方式? –
“最大化浏览器窗口”的公正警告:它并不总是像广告一样工作,尤其是在Chrome上。另外,我可以缩短测试用例:'打开浏览器$ {URL} chrome','最大化浏览器窗口'。如果“最大化浏览器窗口”适用于您的设置,那将完成您似乎正在尝试执行的操作。您不需要专门调用SeleniumKeywords,您已经使用'Library ExtendedSelenium2Library'调用来初始化实例中的确切关键字。 –