Selenium之Grid

Selenium Grid工作原理

Selenium Grid是基于Selenium RC的,而所谓的分布式结构就是由一个hub节点和若干个node代理节点组成。Hub用来管理各个代理节点的注册信息和状态信息,并且接受远程客户端代码的请求调用,然后把请求的命令转发给代理节点来执行。

Selenium Grid环境部署

1.下载selenium-server-standalone,从http://selenium-release.storage.googleapis.com/index.html 进行下载(版本要与selenium对应)

2.启动hub,命令:Java -jar selenium-server-standalone-x.xx.x.jar -role hub。

3.启动之后再打开一个cmd,输入java -jar selenium-server-standalone-x.xx.x.jar -role node -port 5555,这是启动第一个node,指定端口5555

4.hub和node启动好之后我们在浏览器里输入http://127.0.0.1:4444/grid/console,打开grid的控制台:

5.grid_module.py

def grid():
    d = {'http://127.0.0.1:4444/wd/hub': 'firefox', 'http://127.0.0.1:5555/wd/hub': 'internet explorer', }
    return d

6.测试脚本

# encoding:utf-8

from selenium import webdriver
import time, os.path
import grid_module

for host, browser in grid_module.grid().items():
    print (host,browser)
    driver = webdriver.Remote(
        command_executor=host,
        desired_capabilities={
            'platform': 'ANY',
            'browserName': browser,
            'version': '',
            'javascriptEnabled': True
        }
    )
    driver.get("https://www.baidu.com")
    driver.find_element_by_id("kw").send_keys(u"中国")
    driver.find_element_by_id("su").click()
    time.sleep(3)
    if driver.title == u"中国_百度搜索":
        print("title匹配!")
    else:
        print("title不匹配!")
    driver.close()

运行测试脚本后,就可以使用不同的浏览器来进行自动化脚本测试了

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值