美文网首页
selenium grid+webdriver

selenium grid+webdriver

作者: 测试媛617 | 来源:发表于2018-08-10 18:45 被阅读0次
    1.两台计算机均访问:http://www.seleniumhq.org/download/,单击下载Selenium-Server-Standalone-3.13.0.jar,如下图:
    image
    2.打开机器A(假如IP地址是 192.168.1.1)的终端,将目录切换到方才下载的jar包的目录,然后执行如下语句:
    java -jar selenium-server-standalone-3.13.0.jar -role hub
    3.在机器A的浏览器地址栏访问http://localhost:4444/grid/console,若访问的网页中显示出“view config”的链接,表示hub已经成功启动。
    4.在机器B(假如IP地址是 192.168.1.2)中打开终端,将目录切换到jar包的目录,输入如下命令:
    java -jar selenium-server-standalone-3.13.0.jar -role node -port 5555 -hub http://192.168.1.1:4444/grid/register
    5.再次访问http://192.168.1.1:4444/grid/console,验证node 节点是否在Hub上注册成功,注册成功会看到下图:
    image
    6.编写分布式测试脚本:
    from selenium.webdriver import Remote
    # 指定node主机与浏览器为字典,主键不能重复
    dic = {
           'http://192.168.1.2:5555/wd/hub':'chrome',
           'http://192.168.0.1:4444/wd/hub':'chrome',
            'http://192.168.0.1:5556/wd/hub':'chrome'
           }
    # 循环不同的浏览器执行脚本
    for host,browser in dic.items():
        print(host,browser)
        dr = Remote(command_executor=host,
                        desired_capabilities={
                            "browserName": "chrome",
                            "video": "True",
                            "palaform": "MAC"
                        }
                    )
        # 执行用例
        dr.get("http://www.baidu.com/")
        dr.find_element_by_id("kw").send_keys("selenium grid")
        dr.find_element_by_id("su").click()
        print("OK")
        dr.quit()
    
    测试结果:

    机器B上计算机会执行脚本,执行完毕后退出,机器A上可以看到自动化测试的执行结果:

    'http://192.168.1.2:5555/wd/hub':'chrome', ok
    'http://192.168.0.1:4444/wd/hub':'chrome', ok
    'http://192.168.0.1:5556/wd/hub':'chrome'. ok

    相关文章

      网友评论

          本文标题:selenium grid+webdriver

          本文链接:https://www.haomeiwen.com/subject/haylbftx.html