Jenkins簡單集成python+selenium自動化腳本。
1.Jenkins新建任務,輸入名稱
2.構建環境-設置windows批處理
D:
cd D:\Python_test
python 1.py
3.設置Html報告路徑。
4.立即構建查看運行結果。
步驟:
1.系統管理—插件管理,需安裝插件
安裝插件:1、python 2、Html
2.新建任務,輸入任務名稱,選擇:構建一個自由風格的軟件項目。
構建完,執行後查看結果
備註:
1、如果執行時提示不是內部命令,需要配置環境變量: 在系統管理>>中進行設置環境變量。
2、如果這裏的CSS樣式有問題,需要在系統配置,腳本命令行中輸入命令。System.setProperty("hudson.model.DirectoryBrowserSupport.CSP",""),當輸入了命令後我們重新構建,重新生成測試報告進行查看。
<解決 Jenkins 中無法展示 HTML 樣式的問題>參考:https://blog.csdn.net/qq_29427355/article/details/82424467
執行中有以下問題:系統找不到指定文件由用戶 admin 啓動構建中 在工作空間
由用戶 admin 啓動
構建中 在工作空間 D:\Program Files\apache-tomcat-9.0.16\webapps\Jenkins\workspace\python_testsoso 中
[python_testsoso] $ cmd /c call C:\Windows\TEMP\jenkins2083616115280706892.bat
D:\Program Files\apache-tomcat-9.0.16\webapps\Jenkins\workspace\python_testsoso>D:
D:\Program Files\apache-tomcat-9.0.16\webapps\Jenkins\workspace\python_testsoso>cd D:\python_test\so_test
D:\python_test\so_test>python test_so.py
Traceback (most recent call last):
File "C:\Program Files\python\lib\site-packages\selenium\webdriver\common\service.py", line 76, in start
stdin=PIPE)
File "C:\Program Files\python\lib\subprocess.py", line 709, in __init__
restore_signals, start_new_session)
File "C:\Program Files\python\lib\subprocess.py", line 997, in _execute_child
startupinfo)
FileNotFoundError: [WinError 2] 系統找不到指定的文件。
解決方法:配置環境變量(包括chromedriver.exe放置位置)
二、Jenkins調用selenium找不到webdriver
錯誤如下:
由用戶 admin 啓動
構建中 在工作空間 D:\Program Files\apache-tomcat-9.0.16\webapps\Jenkins\workspace\python_testsoso 中
[python_testsoso] $ cmd /c call C:\Windows\TEMP\jenkins5587104125916218914.bat
D:\Program Files\apache-tomcat-9.0.16\webapps\Jenkins\workspace\python_testsoso>D:
D:\Program Files\apache-tomcat-9.0.16\webapps\Jenkins\workspace\python_testsoso>cd D:\python_test\so_test
D:\python_test\so_test>python test_so.py
Traceback (most recent call last):
File "test_so.py", line 31, in <module>
dr = webdriver.Chrome()
File "C:\Program Files\python\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 75, in __init__
desired_capabilities=desired_capabilities)
File "C:\Program Files\python\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 154, in __init__
self.start_session(desired_capabilities, browser_profile)
File "C:\Program Files\python\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 243, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "C:\Program Files\python\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 312, in execute
self.error_handler.check_response(response)
File "C:\Program Files\python\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: cannot find Chrome binary
(Driver info: chromedriver=2.38.552522 (437e6fbedfa8762dec75e2c5b3ddb86763dc9dcb),platform=Windows NT 6.1.7601 SP1 x86_64)
D:\python_test\so_test>exit 1
Build step '執行 Windows 批處理命令' marked build as failure
[htmlpublisher] Archiving HTML reports...
[htmlpublisher] Archiving at PROJECT level D:\python_test\so_test\report to D:\Program Files\apache-tomcat-9.0.16\webapps\Jenkins\jobs\python_testsoso\htmlreports\HTML_20Report
Finished: FAILURE
原因是:安裝的chrome瀏覽器是在userApp下面,jenkins運行找不到
解決方法:
重新安裝chrome放在C:\Program Files (x86)下面
C:\Program Files (x86)\Google\Chrome\Application
【從user下面拷貝整個google文件夾到:C:\Program Files (x86)】