(jenkins)hudson平臺搭建android專案持續化整合以及基於NativeDriver的UI自動化測試環境
部署後執行構建首先會啟動android模擬器,然後進行原始碼構建生成apk檔案,再是安裝apk檔案到模擬器中,最後是構建自動測試程式碼執行自動測試,完成後收集應用的log記錄到hudson中。(下面把android專案的編譯和自動測試放在一塊了,實際使用中可以把android專案的編譯和自動測試的執行新建兩個job,通過依賴關係實現編譯完成生成apk檔案後再執行自動測試)
1、首先安裝hudson外掛Android Emulator Plugin。
該外掛用於啟動android模擬器,安裝apk,收集應用logcat日誌,退出模擬器等。
外掛地址:https://wiki.jenkins-ci.org/display/JENKINS/Android+Emulator+Plugin
功能:
1、通過配置選項設定建立模擬器的sdk版本、螢幕尺寸、解析度、硬體資訊等
2、自動執行android模擬器,等待模擬器完全啟動、自動收集log,關閉模擬器等
3、自動安裝解除安裝應用軟體
4、執行壓力測試工具,並且收集執行結果
2、在hudson上新建一個job。
1、首先安裝hudson外掛Android Emulator Plugin。
該外掛用於啟動android模擬器,安裝apk,收集應用logcat日誌,退出模擬器等。
外掛地址:https://wiki.jenkins-ci.org/display/JENKINS/Android+Emulator+Plugin
功能:
1、通過配置選項設定建立模擬器的sdk版本、螢幕尺寸、解析度、硬體資訊等
2、自動執行android模擬器,等待模擬器完全啟動、自動收集log,關閉模擬器等
3、自動安裝解除安裝應用軟體
4、執行壓力測試工具,並且收集執行結果
2、在hudson上新建一個job。
3、安裝android外掛後在job的配置中的Build Environment選項會出現一個Run an Android emulator during build選項,勾選上後可以配置啟動模擬器的一些配置選項。 注意:配置中暫時去掉Use emulator snapshots的勾選,此選項還是會存在bug。
4、在build配置中,編寫你需要build 的配置。
配置如下圖:
這裡按順序一共有三個配置資訊,執行順便按照配置的先後來執行。
第一個Invoke Ant是android應用原始碼的編譯,通過編譯後生成apk檔案。
Install Android package 選項是第一個編譯完成後,獲取最新的apk檔案,安裝到模擬器中,同時支援安裝前先解除安裝。
第二個Invoke Ant是編譯自動測試程式碼,以及通過TestNG執行自動測試用例,執行自動測試。
補充:Jenkins中Windows節點安裝,用於呼叫執行android原始碼編譯,自動測試執行
你的jenkins部署在一臺電腦上,但是自動測試程式碼可能是部署在專門的測試機上,這時候就需要管理新建jenkins節點,實現在jenkins上
方便的管理執行自動測試。
安裝步驟如下:
參考:https://wiki.jenkins-ci.org/display/JENKINS/Step+by+step+guide+to+set+up+master+and+slave+machines
- 系統管理-》節點管理 新建一個新的節點
- 輸入節點名稱
- 選擇Dumb Slave 點選ok
- 在Slave的配置頁面,輸入如下:
executors的數量,1或多個
Remote FS root 輸入Slave 上的跟目錄,例如c:\jenkins ;一會節點需要安裝相應的軟體會安裝在這個目錄下
Usage選擇:只允許繫結到這臺機器的job
Lunch Method選擇:Launch slave agents via Java Web Start ;這一點比較關鍵
Avaliablitiy選擇:Keep this slave online as much as possible;
然後儲存;
5、然後從具體的需要新增的節點電腦上登陸來husdon。進入當才新建的節點,會看到如下圖所示內容,點選launch,然後執行下載下來的軟體,會在 節點安裝相應的軟體,用於hudson和節點通訊。安裝軟體在前面配置Remote FS root目錄下。安裝成功後會看到下面3中的圖片
相關文章
- 自動化專案Jenkins持續整合Jenkins
- jenkins介面、UI自動化持續整合JenkinsUI
- 基於Jenkins快速搭建持續整合環境Jenkins
- 前端er,Jenkins持續化整合環境搭建前端Jenkins
- 使用Hudson持續整合Android專案Android
- Jenkins+Svn+Docker搭建持續整合環境 自動部署JenkinsDocker
- 搭建持續整合介面測試平臺(Jenkins+Ant+Jmeter)JenkinsJMeter
- Jenkins+Ant+Jmeter搭建持續整合的介面測試平臺JenkinsJMeter
- jenkins + Git 搭建持續整合環境JenkinsGit
- jenkins+ant+jmeter介面自動化的持續整合測試框架JenkinsJMeter框架
- UI 自動化測試平臺UI
- 搭建自動化測試環境
- 微服務下的持續整合-Jenkins自動化部署GitHub專案微服務JenkinsGithub
- Jenkins+Python自動化測試持續整合詳細教程JenkinsPython
- 持續整合(CI)、自動化構建和自動化測試--初探 .
- 基於CentOS、docker搭建jenkins內網前端可持續整合環境CentOSDockerJenkins內網前端
- 基於 flow.ci 實現 PHP 專案自動化持續整合PHP
- 8 步搭建 Node.js+MongoDB 專案的自動化持續整合Node.jsMongoDB
- 3 分鐘輕鬆搭建 Ruby 專案自動化持續整合
- 前端er,Jenkins持續化整合Webpack專案前端JenkinsWeb
- 搭建持續整合單元測試平臺(Jenkins+Ant+Java+Junit+SVN)JenkinsJava
- Jenkins 持續整合 Android 專案JenkinsAndroid
- 自動化測試 selenium 環境搭建
- SoapUI實踐:自動化測試、壓力測試、持續整合UI
- 基於Jenkins實現php專案的自動化測試、自動打包和自動部署JenkinsPHP
- 思考如何將自動化測試加入持續整合中
- 基於PhantomFlow的自動化UI測試UI
- 基於Selenium2 與Python自動化測試環境搭建Python
- 使用 flow.ci 實現 Android 自動化測試與持續整合Android
- python+selenium UI自動化測試環境搭建及使用PythonUI
- 從零開始搭建Jenkins+Docker自動化整合環境JenkinsDocker
- 利用Jenkins+Gitlab搭建持續整合(CI)環境JenkinsGitlab
- Jenkins+Maven+SVN快速搭建持續整合環境(轉)JenkinsMaven
- 使用Jenkins持續整合前端專案並自動化部署到Nginx伺服器Jenkins前端Nginx伺服器
- 基於Jmeter+Maven+Jenkins持續整合介面測試框架JMeterMavenJenkins框架
- 新夢想幹貨分享——持續整合的自動化測試
- [opendx] 基於 appium 的移動端 UI 自動化測試平臺-介紹篇APPUI
- 基於 HttpRunner + Django + Vue + Element UI 的介面自動化測試平臺,生產可用HTTPDjangoVueUI