小編寫這篇文章的主要目的,給大家進(jìn)行講解關(guān)于Pyhton自動化測試的相關(guān)問題,比如如何對其進(jìn)行持續(xù)集成相關(guān)方面的介紹,關(guān)于Jenkins這個要怎么去進(jìn)行操作呢?下面就給大家詳細(xì)介紹下。
持續(xù)集成
官方術(shù)語:
持續(xù)集成(Continuous Integration),也就是我們經(jīng)常說的CI
持續(xù)集成(CI)是一種實(shí)踐,可以讓團(tuán)隊(duì)在持續(xù)的基礎(chǔ)上收到反饋并進(jìn)行改進(jìn),不必等到開發(fā)周期后期才尋找和修復(fù)缺陷。
持續(xù)集成流程
在軟件的生命周期過程中,從需求,到實(shí)現(xiàn),到測試,到用戶手中,是一個持續(xù)的過程。
在這個過程當(dāng)中,不止是開發(fā)工作,有很多的環(huán)節(jié)都可以利用自動化的手段去持續(xù)的定期的執(zhí)行任務(wù),來提升整體的軟件質(zhì)量和效率。
下圖為我畫的在軟件生命周期過程中,開發(fā)人員和測試人員和配置管理人員的流程圖。
圖中紅色字體部分均是可以持續(xù)定期的去執(zhí)行。
將上圖中的內(nèi)容綜合一下,那么我們可以得到下圖的持續(xù)集成流程。
Jenkins
一款持續(xù)集成工具,可以在jenkins當(dāng)中完成以上持續(xù)集成流程中的每一個環(huán)節(jié)。
jenkins中有3大重要概念:
1、Job(任務(wù)/工程)
在jenkins平臺中,都是以Job(任務(wù)/工程)為單位去完成一件事情的。
在使用jenkins時,都是會在jenkins管理界面當(dāng)中創(chuàng)建一個job/item。在job/item中來組織任務(wù)。
2、plugin(插件)
jenkins提供平臺,集成各種插件來完成一個Job。想用jenkins平來做什么,先找找有沒有相應(yīng)的插件。
比如:windows命令、Linux命令的支持、SVN和Git代碼獲取、郵件發(fā)送,測試報告集成等都需要安裝相應(yīng)的插件才能夠在jenkins當(dāng)中使用這些功能。
3、workspace(工作空間)
jenkins是通過文件形式來存儲和管理數(shù)據(jù)的。
所以,在安裝jenkins,要指定一個Jenkins_Home目錄。所有jenkins相關(guān)的數(shù)據(jù)都存放在此目錄下。
workspace即給jenkins指定一個專門的目錄來存儲其所有的配置和數(shù)據(jù)。
jenkins的workspace是根目錄,其下每個Job都有屬于自己的workspace。
每個job的workspace當(dāng)中用來存放本任務(wù)涉及到的數(shù)據(jù)/文件,以及任務(wù)執(zhí)行完成后生成的數(shù)據(jù)/文件。
相當(dāng)于,給每一個job開辟了一個獨(dú)立的文件夾。
4、jenkins管理(Jenkins Manager)
整個jenkins的全局配置。
包括權(quán)限管理、插件管理、節(jié)點(diǎn)管理等。
在Jenkins當(dāng)中要完成一個任務(wù),首先要創(chuàng)建一個Job/Item。
通過配置Job/Item,來配置任務(wù)的觸發(fā)條件、任務(wù)的代碼從哪獲取、任務(wù)的執(zhí)行過程涉及哪些步驟、任務(wù)執(zhí)行完成之后要做哪些通知/展示工作。
一個Job/Item的配置項(xiàng)如下:
1、基本信息配置(General)
Job名字、指定當(dāng)前Job的工作空間、指定當(dāng)前Job綁定到哪個執(zhí)行機(jī)上執(zhí)行等。。。
2、源碼管理(Source Code Management)
svn/git等,需要相應(yīng)的插件支撐。
配置好源碼管理后,在執(zhí)行Job時會自動從相應(yīng)的源碼庫里下載代碼到當(dāng)前Job的工作空間中。
3、構(gòu)建觸發(fā)器(Build Triggers)
觸發(fā)器:執(zhí)行當(dāng)前任務(wù)的條件。
常用定時構(gòu)建:類似windows/linux的定時任務(wù)。指定當(dāng)前Job執(zhí)行的時間。
定時任務(wù)配置規(guī)則如下:
首先,一共有5個配置選項(xiàng)(每個選項(xiàng)之間用空格隔開),分別是:
MINUTE(分鐘)HOUR(小時)DOM(每月的天數(shù))MONTH(一年的月份)DOW(每周的天數(shù))
MINUTE(分鐘):指一小時內(nèi)的分鐘數(shù)。有效值為:0-59
HOUR(小時):指一天內(nèi)的小時數(shù)。有效值為:0-23
DOM(每月的天數(shù)):指一個月內(nèi)的天數(shù)。有效值為:1-31
MONTH(一年的月份):指一年當(dāng)中的月份數(shù)。有效值為:1-12
DOW(每周的天數(shù)):指一周當(dāng)中的天數(shù)。有效值為0-7。0和7都表示周日。1-6分別表示周一到周六。
支持以下操作:
*****表示匹配所有有效值。
M-N表示一個連續(xù)的有效值范圍。比如在DOW中用1-5,表示取周一到周五。
M-N/X或者*/X表示以X為步長,取指定連續(xù)范圍或所有有效值范圍內(nèi)的值。比如在DOW中用1-5/2,表示取周一,周三,周五。
A,B,.....Z表示枚舉。比如在DOW中用1,2,6,表示取周一,周二,周六。
示例:
每周一、三、五,每天上午10點(diǎn)整,自動觸發(fā)任務(wù)的執(zhí)行。
定時配置如下:0 10**1,3,5
MINUTE(分鐘):值為0。
HOUR(小時):值為10
DOM(每月的天數(shù)):值為*沒有指定一個月當(dāng)中,只有哪幾天運(yùn)行。所以用*匹配所有有效值。
MONTH(一年的月份):值為*沒有指定一年當(dāng)中,只有哪個月運(yùn)行。所以用*匹配所有有效值。
DOW(每周的天數(shù)):值為1,3,5。用枚舉方式。因?yàn)榧床皇撬兄担膊皇沁B續(xù)的有效值。
4、構(gòu)建(Build)
此一步是用來實(shí)現(xiàn)所有你想用此Job做的事情。
添加構(gòu)建步驟:按順序執(zhí)行構(gòu)建步驟。
構(gòu)建步驟的下拉列表選項(xiàng)多少,由jenkins中已安裝的相關(guān)插件決定。因?yàn)樵S多功能都是由插件來支撐的。
5、構(gòu)建后行為(Post-build Actions)
此一步主要在任務(wù)執(zhí)行完成之后,要做的事情。
比如要發(fā)送郵件、要展示任務(wù)執(zhí)行的結(jié)果。
方式與4中一樣,都是選擇相應(yīng)的插件功能。
構(gòu)建后操作步驟的下拉列表選項(xiàng)多少,由jenkins中已安裝的相關(guān)插件決定。因?yàn)樵S多功能都是由插件來支撐的。
任務(wù)配置完成之后,點(diǎn)擊立即構(gòu)建,測試任務(wù)在執(zhí)行時是否有錯誤。
到此為止,這篇文章就為大家介紹到這里了,希望可以為大家?guī)砀嗟膸椭?/p>
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/128018.html
摘要:對測試的影響讓單元測試運(yùn)行的更順暢單元測試驅(qū)動開發(fā)是一個很好的應(yīng)用程序開發(fā)方式,單元測試往往也是和代碼一起被提交到代碼倉庫中。但是很多單元測試通常依賴于很多其他服務(wù),而這些服務(wù)的標(biāo)準(zhǔn)化配置往往是一個難點(diǎn),如數(shù)據(jù)庫的搭建防火墻的配置等。 傳統(tǒng)的軟件開發(fā)、測試、運(yùn)維需要三個團(tuán)隊(duì)在三個不同的環(huán)境中進(jìn)行,而三個環(huán)境的不同引發(fā)了很多的問題。如:工作內(nèi)容的重復(fù);開發(fā)環(huán)境中可運(yùn)行的程序在測試和運(yùn)維環(huán)...
摘要:基于的特性,以及持續(xù)集成的需求,個推采用為持續(xù)集成搭建了一整套測試系統(tǒng)。個推持續(xù)集成流程以一個假設(shè)名為模塊為例,以開發(fā)人員的視角闡述了持續(xù)集成的邏輯。 軟件開發(fā)過程中,開發(fā)成員經(jīng)常需要把自己工作集成到項(xiàng)目中,通常每個成員每天至少集成一次。如果項(xiàng)目較小,對外部的依賴較小,那么軟件集成可能不會是什么問題。但是目前很多軟件項(xiàng)目特別是互聯(lián)網(wǎng)項(xiàng)目面臨著需求不明確,系統(tǒng)架構(gòu)復(fù)雜,任務(wù)分配混亂等一系...
摘要:來這里看看的工程師如何進(jìn)行持續(xù)集成與持續(xù)部署。主要介紹了豆瓣移動持續(xù)集成和測試相關(guān)實(shí)踐,用工具化自動化社會化測試來解決遇到的問題,將打包發(fā)布環(huán)節(jié)自動化。這期的持續(xù)集成實(shí)踐分享就到這里。 我們常看到許多團(tuán)隊(duì)和開發(fā)者分享他們的持續(xù)集成實(shí)踐經(jīng)驗(yàn),本期 fir.im Weekly 收集了 iOS,Android,PHP ,NodeJS 等項(xiàng)目搭建持續(xù)集成的實(shí)踐,以及一些國內(nèi)外公司的內(nèi)部持續(xù)集成...
閱讀 911·2023-01-14 11:38
閱讀 878·2023-01-14 11:04
閱讀 740·2023-01-14 10:48
閱讀 1982·2023-01-14 10:34
閱讀 942·2023-01-14 10:24
閱讀 819·2023-01-14 10:18
閱讀 499·2023-01-14 10:09
閱讀 572·2023-01-14 10:02