在selenium2library中无法识别使用自定义库打开的RobotFramework浏览器

2024-05-08 18:32:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我是Python和Robot框架的初学者。我正在尝试创建并学习在我的robot框架测试套件中使用自定义库。在

我用以下代码创建了一个自定义库:

from selenium import webdriver
import time

class CustomLibrary:
def Open_My_Browser(self):
    browser = webdriver.Chrome()
    browser.maximize_window()
    browser.get("http://demo.guru99.com/V4/")
    time.sleep(5)

我导入了这个自定义库并指定了关键字“打开我的浏览器”。这个关键字执行我的自定义库中的代码,但是下一步是从selenium2library中执行的,就像click按钮一样。在

执行停止,我收到消息“没有浏览器打开”。我知道我的selenium2库无法识别customlibrary打开的浏览器。但我不能解决这个问题。谁能给点建议吗

我的机器人文件:

^{pr2}$

Tags: 代码fromimportbrowser框架time套件selenium
2条回答

您可以将外部Python类(关键字)添加为plugins。在

*** Settings ***
Library    SeleniumLibrary         plugins=${CURDIR}/Plugin.py

*** Test Cases ***
Open My Browser
    Open My Browser

Plugin.py中的内容如下:

^{pr2}$

顺便说一下,您还可以通过Extending SeleniumLibrary创建一个新库。{{cd2>然后

当然,浏览器会话不会被重用-它是由一个单独的对象拥有的,SeleniumLibrary/selenium2库不知道也无法访问它。
这与手动建立一个DB或ssh连接,然后期望库开始使用它是一样的-这不会发生。在

如果您想使用SeleniumLibrary中的关键字,您需要使用它的Open Browser,这样它就可以引用它(浏览器)。在

相关问题 更多 >