jenkins遠端Windows節點執行RF web自動化指令碼遇到的問題
阿新 • • 發佈:2018-11-06
之前搭建一套RF+jenkins+svn的自動化構建專案,過程中遇到不少問題,但大多數網路上都有解決。主要有幾個比較特殊的問題一直比較困擾。現將其總結如下:
一、chrome瀏覽器訪問許可權問題:
由於jenkins遠端訪問Windows環境,Windows許可權問題又不太瞭解的情況下在執行機環境上預設安裝完成chrome瀏覽器後使用jenkins構建任務失敗,提示:
WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home
等等問題,看似沒有webdriver,其實是jenkins執行時候找不到chromedriver或者把driver和瀏覽器配套不起來
解決辦法:
1、直接將chrome.exe和chromedriver.exe放在同一目錄,通常為chrome安裝路徑下的application目錄下。
2、將存放chrome.exe和chromedriver.exe的目錄新增入執行機環境變數
3、將上步中環境變數全部以鍵值對的方式配置到執行節點配置中,如下圖:點選執行節點→節點後的齒輪然後配置
二、驗證碼識別解析度問題
我們web自動化有驗證碼識別的步驟,識別思想是截圖後然後識別。但當jenkins執行時發現驗證碼截圖位置和本機除錯的完全不同。識別後驗證碼都顯示為空。
解決辦法:適配jenkins執行環境指令碼。
三、jenkins遠端執行時瀏覽器不開啟會不會影響執行結果,如截圖識別之類的UI指令碼。
答案是:不影響指令碼執行過程,但因為更換執行環境web自動化會存在大量不可預期的問題
解決辦法:儘量減少web自動化指令碼數量,用介面實現功能。如果避免不了,儘可能少用定位座標類操作。