docker Selenium Grid環境搭建

2022-03-17 06:25:17 字數 1513 閱讀 9536

原理可以自行了解:

總的來說 ,就是主節點和子節點,主節點傳送任務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
映象啟動成功: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='

',desired_capabilities=)

driver.get(

'')driver.find_element_by_id("kw

").send_keys("

小心走火")

driver.find_element_by_id("su

").click()

執行指令碼:內容如下

注意: 只執行乙個case時,docker按順序選擇node節點執行一次該case。這樣開多個node節點,然後使用多執行緒執行,即可將case併發進行了

github pages Jekyll環境搭建

通過jekyll可以搭建 簡單理解成網頁生成規則,就是通過配置能自動幫你生成靜態網頁的東西。如何配置,請看 首先要更新ruby,系統倉庫裡最新的是1.9.3,而jekyll要求 2.0 最終版本資訊 ruby v ruby 2.3.3p222 2016 11 21 revision 56859 x8...

iOS WebDriverAgent 環境搭建

webdriveragent是facebook 在去年的 seleniumconf 大會上推出了一款新的ios移動測試框架。當時的推文申明,還只支援模擬器,不過在今年4月更新的版本中,官方宣稱支援真機測試了,大家可以檢視官方github 的介紹 下面摘錄一段官方對於webdriveragent的介紹...

pytorch tensorflow環境搭建

整個環境搭建鏈結 anaconda cuda 步驟一 安裝anaconda 作用是建立虛擬環境,避免各個環境受版本不同的影響 步驟二 cuda安裝 顯示卡廠商nvidia運算平台 sudo bash cuda 9.0.176 384.81 linux run此處是很長的說明 do you accep...