Ubuntu20.04從Java配置到Jenkins持續整合Python自動化測試
1.java環境配置
開啟終端,鍵入如下命令檢視可安裝的jdk版本
javac
推薦安裝如圖版本
sudo apt install openjdk-8-jdk-headless
鍵入y回車
正常情況下可順利安裝完畢
然後新建終端視窗
sudo vim /etc/profile
vim命令:英文狀態下按i進入編輯模式,按esc退出編輯模式,shift加:,鍵入wq。儲存
JAVA_HOME的路徑:
配置環境變數,新增如下環境變數
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
然後
source /etc/profile
最後輸入javac,如下代表成功
2.tomcat安裝
終端輸入,查詢當前可用的tomcat版本
apt search tomcat
鍵入命令安裝
sudo apt install tomcat9 tomcat9-admin tomcat9-common tomcat9-docs tomcat9-examples tomcat9-user
#啟動
service tomcat9 start
#狀態
service tomcat9 status
#停止
service tomcat9 stop
按q退出狀態檢視
配置管理員許可權
cd /etc/tomcat9/
ls -al
sudo vim tomcat-users.xml
<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<user username="root" password="123456" roles="manager-gui,admin-gui"/>
重啟服務測試
service tomcat9 restart
3.jenkins安裝
終端視窗
#新增官方軟體倉庫的祕鑰到本地的apt祕鑰中 wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
將官方提供的軟體倉庫地址加入到本地的apt軟體源中,本地用於存放軟體源的檔案在/etc/apt/sources.list
#將地址新增進本地的軟體源列表
deb https://pkg.jenkins.io/debian-stable binary/
新增方法:
sudo vim /etc/apt/sources.list
更新我們本地的軟體源快取,然後直接安裝jenkins
sudo apt update
sudo apt install jenkins
啟動Jenkins
sudo /etc/init.d/jenkins start
瀏覽器位址列輸入本機ip加埠號8080,我這裡是
http://192.168.1.6:8080/
可是,tomcat卻佔用了8080埠,如圖
所以修改jenkins的埠
sudo vim /etc/default/jenkins
修改如下內容 HTTP_PORT=8085
重啟jenkins服務
sudo /etc/init.d/jenkins restart
瀏覽器位址列輸入
192.168.1.6:8085
參考:https://www.cnblogs.com/shuoer/p/9471839.html
4.Jenkins的基本使用與自動化專案配置
4.1 配置Jenkins
檢視密碼
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
安裝推薦外掛,等待一段時間
有些外掛會安裝失敗,多重試幾次
建立管理員賬號
配置完後重啟Jenkins
登入後,進入後首頁
4.2 Selenium自動化專案配置
4.2.1 新建一個任務
4.2.2 配置Git/Github
進入Mail Box的配置,可配置自己的GitHub倉庫。
每個工作日,每兩小時一次,每45分鐘一次,上午九時四十五分開始,下午三時四十五分結束。
配置完後儲存,任務首頁在兩分鐘後會多出一個Git Polling Log,可單擊檢視poll日誌
拉取後的專案儲存在/var/lib/jenkins/workspace/,可cd檢視。
4.2.3 shell命令
執行情況
4.2.4 特別注意
初次執行,出現以下報錯
selenium.common.exceptions.WebDriverException: Message: unknown error: Chrome failed to start: exited abnormally
(unknown error: DevToolsActivePort file doesn't exist)
(The process started from chrome location /usr/bin/chromium-browser is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
需要給Chrome新增如下引數:
option = webdriver.ChromeOptions()
option.add_argument('headless')
option.add_argument('no-sandbox')
option.add_argument('disable-dev-shm-usage')
如圖,我已在我的專案中新增
4.2.5配置HTML報告
需要安裝Groovy和html外掛,在Jenkins外掛管理中心自行安裝
build(構建) >>> add build step(增加構建步驟) >>>Execute system Groovy script
System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")
post-build(構建後操作) >>> add post-build action(增加構建後操作步驟) >>>Publish HTML reports
儲存 >>> build now,可看到多出一個HTML Report
4.2.6配置構建統計
這步為可選配置,因專案裡沒有生成xml報告。
post-build(構建後操作) >>> add post-build action(增加構建後操作步驟) >>>Publish JUnit test result report
4.2.7配置自動傳送郵件
首頁 >>>Manage Jenkins >>> Configure System
Jenkins Locations >>>System admin e-mail address(系統管理員郵件地址),填寫你將用哪個郵箱傳送報告
返回專案配置,post-build(構建後操作) >>> add post-build action(增加構建後操作步驟) >>>Extended E-mail Notification
修改一下:Attachments 改為 /TestReport/*.html
Triggers 選為Always,可自選
儲存任務,重新執行任務構建。可在接收報告的郵箱看到Jenkins下發的報告郵件