zoukankan      html  css  js  c++  java
  • selenium python grid

      学习自动化一直都是在本机操作,感觉这样能够减少工作量确实很少。最近研究了一下分布式操作。

      开始的想法是,我在一台机器上启动脚本,然后让脚本在不同机器的不同版本的浏览器上进行跑脚本。

      需要准备的东西:

        1、jdk,以及环境变量配置好。在cmd下运行javac如果没有报错就行。

        2、python开发环境。

        3、selenium 安装好

        4、下载 selenium-server-standalone-2.45.0.jar的包。这个版本自己看,我用的是这个版本,主要是用46的报错

      一切准备好了,我用的三台机器。60机器作为我跑脚本的机器,89、162都是平台。

      第一、(我按照网上说的方法貌似有的失败。)最后我是在60这台机器上将在命令行cmd窗口切换到我jar包所在文件夹,然后执行命令:java -jar selenium-server-standalone-2.45.0.jar -role hub     (java -jar selenium-server-standalone-2.45.0.jar -port 4000 -role hub -nodeTimeout 600) 他默认起的是4444端口,这个可以自己定义的,这里是启动中心节点,我认为就是在哪台机器作为跑脚本的机器。

      第二、启动node:同样cmd切换到jar包目录。java -jar selenium-server-standalone-2.45.0.jar -10.2.4.60 -port 4002 -role webdriver -hub http://10.2.4.60:4000/grid/register -browser browserName=firefox,platform=WINDOWS  这个指定了执行的浏览器以及平台的。可以不要-browser后面的。(在启动中心节点的时候启动了selenium server的)

      第三部、在中心节点机器的浏览器中输入http://localhost:4000/grid/console 查看链接的信息,如果有node机器信息那么就正确了

      第四部、联调,看在中心节点执行脚本能否在node机器上运行,我一直在这里纠结了很久都不行,直接贴事例代码:

      

    __author__ = 'pc'
    from selenium.webdriver import Remote
    from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
    list =['http://10.2.4.89:4002/wd/hub','http://10.2.4.162:4001/wd/hub']
    for host in list:
        driver = Remote(command_executor=host,
                        desired_capabilities=DesiredCapabilities.FIREFOX)
        driver.get('http://www.baidu.com')
        driver.find_element_by_id('kw').send_keys('selenium python')
        driver.find_element_by_id('su').click()
        driver.quit()

    我纠结了很久才调通的,还有很多需要扩展的地方,但是觉得只要调试通了一切都好说了。

      

  • 相关阅读:
    Android应用性能优化
    打造高质量Android应用:Android开发必知的50个诀窍
    毕向东day23--java基础-网络总结
    《编写高质量代码:改善Java程序的151个建议》
    最新java数组的详解
    主线程中一定不能放耗时操作,必须要开子线程,比如下载文件,不然会不让你拿到输入流--报错显示android.os.NetworkOnMainThreadException
    《Head First设计模式(中文版)》
    码表由来:ascll码-Gbk2312-GBK-Unicode-UTF-8
    《Java程序性能优化:让你的Java程序更快、更稳定》
    LeetCode 147. 对链表进行插入排序
  • 原文地址:https://www.cnblogs.com/Mushishi_xu/p/4651956.html
Copyright © 2011-2022 走看看