13、技巧之六:Remote Webdriver和Selenium Grid的应用实例【Selenium+Python3网页自动化总结】

13、技巧之六:Remote Webdriver和Selenium Grid的应用实例【Selenium+Python3网页自动化总结】

1、为啥要有Remote Webdriver?

selenium 允许你在远程计算机上自动化浏览器,如果它们上面运行着 Selenium Grid。执行代码的计算机被称为客户端计算机,而带有浏览器和驱动程序的计算机被称为远程计算机,有时也称为终节点。为了将 Selenium 测试定向到远程计算机,你需要使用一个 Remote WebDriver 类,并传递包含该计算机上 Grid 端口的 URL。

2、Selenium Grid是什么 ?

Selenium Grid 允许通过将客户端发送的命令路由到远程浏览器,在远程机器上执行 WebDriver 脚本。

使用Selenium Grid好处是:

  •     提供在多台机器上并行运行测试的简便方式
  •     允许在不同的浏览器版本上进行测试
  •     实现跨平台测试

3、应用实例

在这个例子中,我们使用 webdriver.Remote 创建了一个远程 WebDriver 实例,指定了远程 Selenium Server 的地址(remote_url)和浏览器的期望配置(capabilities)。然后,我们像使用本地 WebDriver 一样使用这个远程 WebDriver 执行测试。

确保替换 <remote_ip> 和 <remote_port> 为你实际使用的远程 Selenium Server 的 IP 地址和端口号。

首先,确保你已经安装了 Selenium 和浏览器驱动,并启动 Selenium Server。你可以下载 Selenium Server JAR 文件并在本地运行:

java -jar selenium-server-standalone-<version>.jar

下载地址:https://www.selenium.dev/downloads/

接下来,使用 python 编写一个测试脚本,连接到远程的 Selenium Server,然后在远程浏览器中执行测试。

​


from selenium import webdriver

from selenium.webdriver.***mon.keys import Keys

from selenium.webdriver.***mon.desired_capabilities import DesiredCapabilities

# 定义远程浏览器的地址

remote_url = "http://<remote_ip>:<remote_port>/wd/hub"

# 定义所需的浏览器和版本

capabilities = DesiredCapabilities.CHROME.copy()

capabilities['version'] = '94.0'

# 创建远程 WebDriver 实例

driver = webdriver.Remote(***mand_executor=remote_url, desired_capabilities=capabilities)

try:

    # 打开网页

    driver.get("https://www.example.***")

    # 在搜索框中输入文本

    search_box = driver.find_element("name", "q")

    search_box.send_keys("Selenium WebDriver")

    # 模拟按下 Enter 键

    search_box.send_keys(Keys.RETURN)

    # 等待一段时间,以便查看搜索结果

    driver.implicitly_wait(5)

    # 打印页面标题

    print("Page Title:", driver.title)

finally:

    # 关闭浏览器窗口

    driver.quit()
​

转载请说明出处内容投诉
CSS教程_站长资源网 » 13、技巧之六:Remote Webdriver和Selenium Grid的应用实例【Selenium+Python3网页自动化总结】

发表评论

欢迎 访客 发表评论

一个令你着迷的主题!

查看演示 官网购买