zoukankan      html  css  js  c++  java
  • docker Selenium-Grid环境搭建

    原理可以自行了解:

    总的来说 ,就是主节点和子节点,主节点发送任务request到子节点上,子节点收到命令并且执行

    那么怎么搭建这套环境呢,他们又是如何连接起来的呢

    一、主节点hub

    首先可以查看和selenium相关的镜像,找到我们需要启动的镜像

    这里使用 docker search selenium 可以查看

     这里我们选择selenium/hub镜像

    开启镜像,selenium/hub,命令如下:

    sudo docker run -d -p 4444:4444 -e GRID_MAX_SESSION=200 --restart=always --name hub selenium/hub

    docker run 可以直接运行镜像, 首先它会去docker中查看是否有镜像selenium/hub,如果没有则进入docker hub下载(docker pull selenium/hub),然后启动;反之,直接启动

    镜像启动成功:http://localhost:4444/grid/console 查看是否有启动,并且可以查看子节点

    二、子节点启动

    这里我使用的是docker search selenium找到的selenium/node-chrome和selenium/node-chrome-debug;

    debug中自带vnc server 可以共开发者调试

    开启debug镜像:

    sudo docker run -d -e NODE_MAX_INSTANCES=1 -e NODE_MAX_SESSION=1 --shm-size=5g -p 5900:5900 --link hub:hub --name node4 selenium/node-chrome-debug

    这里的5900端口暴露出来,才可以连接,否则会连接被拒:The connection was refused by the computer

    打开之后,需要输入密码:secret

    成功运行后,可以看到界面:

     三、运行脚本查看效果

    脚本:

    from selenium import webdriver
    
    # 连接到主节点
    driver = webdriver.Remote(command_executor='http://127.0.0.1:4444/wd/hub',
                              desired_capabilities={'browserName': 'chrome'})
    
    driver.get('https://www.baidu.com/')
    
    driver.find_element_by_id("kw").send_keys("小心走火")
    driver.find_element_by_id("su").click()

    运行脚本:内容如下

    注意: 只运行一个case时,docker按顺序选择node节点运行一次该case。这样开多个node节点,然后使用多线程运行,即可将case并发进行了

  • 相关阅读:
    SNP/单核苷酸多态性分析
    非链特异性转录组测序
    什么是转录因子?
    MEME(Motif-based sequence analysis tools)使用说明
    DNA binding motif比对算法
    序列比对那点事儿
    DNA motif 搜索算法总结
    Bioconductor简介
    什么是RNA-Seq (RNA Sequencing)
    TPM、read counts、RPKM/FPKM你选对了吗?
  • 原文地址:https://www.cnblogs.com/nieliangcai/p/13570232.html
Copyright © 2011-2022 走看看