Selenium編寫用例的時候,需要不斷的運行調試debug,但正常情況會每次重新打開一個Chrome運行,如果你的系統需要登陸,或者你正在調試的用例需要很長的前置步驟,都重新來一遍非常浪費時間。有沒有辦法可以讓Selenium直接在已打開的瀏覽器上繼續運行呢?有的:
首先使用命令打開Chrome瀏覽器並開啟遠程調試功能,打開CMD,輸入
chrome.exe --remote-debugging-port=9222 --user-data-dir="D:\selenium_ui_auto\chrome_temp"

如圖,瀏覽器已打開了,我們輸入百度地址打開百度首頁,然后運行以下代碼:
from selenium import webdriver from selenium.webdriver.chrome.options import Options chrome_options = Options() chrome_options.add_experimental_option("debuggerAddress", "127.0.0.1:9222") chrome_driver = r"D:\code\python\selenium_ui_auto\driver\chromedriver.exe" driver = webdriver.Chrome(chrome_driver, chrome_options=chrome_options) driver.find_element_by_id('kw').send_keys(u'測試工程師小站')
可以看到,已打開的瀏覽器,原來在搜狗新聞頁,但調試的用例假如是百度頁,我手動輸入百度后,運行代碼,被輸入了關鍵字'測試工程師小站',並顯示了搜索結果。這樣,以后調試的時候,就可以手動運行前置步驟,再運行代碼了。
---------------------------------------------------------------------------------
關注微信公眾號(測試工程師小站)即可在手機上查閱,並可接收更多測試分享,發送【測試資料】更可獲取百G測試教程~