999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

簡述持續集成在自動化測試體系建設中的重要性

2018-09-18 09:56:58邵晨影
數碼設計 2018年2期
關鍵詞:系統

邵晨影

(上海找油信息科技有限公司,上海,510000)

引言

典型的軟件工程項目利用持續集成過程作為自動調整某些任務的方法,以提高軟件質量,如自動化測試。然而自動化測試主要側重于根據項目需求實現的代碼構建,不考慮在組織或工程領域之外開發的其他項目,因此項目的代碼構建在一種獨立的環境中進行自動化測試,因為它們沒有充分考慮到不同項目之間的復雜依賴關系,所以自動化測試也不是很準確,雖然項目依賴關系可以通過構建管理機制隱式處理,但項目依賴關系在大部分場合下根本不被考慮,這樣就導致了自動化測試潛在的失敗。積極考慮和處理依賴關系,發現問題及時向開發者反饋,這個過程是手動完成的,并且是一項耗時的任務。通常情況下,問題只有在變更完成并集成到系統后才能被發現,這對開發人員和用戶都是一個問題。本文中將持續集成過程作為一種方法,充分考慮了各種軟件工程項目的代碼構建之間依賴關系,以提高自動化測試的有效性,完善自動化體系的建設。

軟件測試是一項耗資較大并且耗費大量勞動力的活動,因此自動化測試成為測試更加高效的一種方法,自動化測試體系的建設也更加重要,持續集成也是它成功實現的關鍵,進行頻繁執行自動化測試用例,能夠盡早的發現系統問題并給予解決,確保系統的正確性。在開發系統時,自動化測試方法包括代碼分析和檢查,代碼驅動自動化測試和圖形用戶界面的自動化測試[1]。

1 持續集成的概念與優勢

持續集成起源于極限編程,它是開發技術的最佳實踐之一。它要求每個開發人員在幾個小時內完成一項任務,并定期將代碼提交到版本控制存儲庫,然后持續集成服務器通過檢測代碼更改自動啟動集成構建,運行代碼靜態檢查和自動測試,試圖發現新更改的代碼帶來的新的潛在缺陷,并確保其他功能不受影響,然后持續集成服務器生成最終的結果報告,并將報告發送給相應的開發人員和管理人員(如圖1),并自動生成最終結果。最終結果報告包括構建狀態、重復邏輯檢查、代碼復雜度報告、符合編碼標準、單元測試結果、功能測試結果等[2]。

圖1 持續集成構成

開發人員必須根據最終結果報告修復新引入的缺陷,如果不能立即執行修復,應該撤回提交的代碼以確保其他開發人員能夠正常工作,同時也隨時了解每次集成的狀態構建過程和測試必須足夠快地完成,以便持續集成服務器能夠跟上這些變化并向軟件工程師及時反饋,同時他們對變化的記憶仍然是最新的,據說一個軟件項目中有50人的開發團隊開發了200,000行代碼,通常每天發布大約20次基于持續集成的自動化測試。目前,越來越多的公司在軟件系統開發中采用這種方式,如Google,Facebook,百度,阿里巴巴等。

1.1 優勢

降低風險。當服務器檢測到程序員提交源代碼更改時,它會自動重新編譯,運行單元測試、功能測試與集成測試,并在短時間內反饋結果。服務器自動發送電子郵件或短信通知給引入缺陷的開發人員,讓開發人員可以輕松找出構建失敗或測試失敗的根本原因,并在早期解決問題。因此避免了傳統軟件開發中廣泛存在的風險。

節省成本。在軟件開發過程中,發現缺陷越早,解決的成本就越低。根據國外軟件質量部門的統計數據,發現和解決軟件缺陷需要花費大約 100美元在單元測試階段,而在市場上發布的產品中解決軟件bug需要約10,000美元。持續集成可以使缺陷得到及時檢測和解決,從而大幅度節省成本。

提高效率。軟件開發集成過程中,人工集成最新代碼,手工代碼復審,手工測試等操作的反復手工勞動會隨機引入一些不確定因素,使得缺陷檢測和修復極其困難。每次在干凈的環境中運行(重新編譯構建模塊,而不是重新使用上次編譯的結果),使用相同的過程和腳本來構建和測試軟件,從而降低系統級的不確定性,提高整個開發團隊的工作效率。例如一個項目開發過程中,有許多重復性的活動,其包括代碼編譯,數據庫集成,部署,測試,問題反饋等等,通過自動化集成在構建腳本時,將依次執行編譯,自動測試等動作,減少提交重復代碼沖突的排查時間,從而減少了重復性勞動。

1.2 連續集成的必要性

傳統的軟件開發方法通常包括以下幾個階段:需求收集和分析,模塊化設計,實施,集成測試和系統測試。最常見的問題是每個模塊都可以單獨開發和測試,一切都很正常,但是當它們集成在一起時會出現很多意想不到的問題。例如:開發人員在進行某些更改時會影響其他人的代碼,但他不知道該代碼,因此會出現軟件缺陷。由于上述兩人之間的交叉模塊化,這類軟件缺陷很難調查。隨著時間的推移,問題會逐漸惡化,缺陷通常發生在整合階段,但實際上已經存在了幾周甚至幾個月,所以開發人員需要花費大量的時間和精力來找出這些缺陷的根本原因,這又會影響項目發布的成功。另一方面,項目的日常工作中有許多重復的工作,如代碼審查,單元測試,代碼覆蓋率檢查,靜態代碼分析,動態代碼分析,重復構建,發布版本變更等,他們消耗開發人員大量的重復性工作時間,如果持續集成在項目開發中引入,不僅可以大大提高項目團隊的響應時間,而且還可以讓開發人員免于重復工作。此外,還有足夠的時間用于產品創新和高質量軟件的開發。

2 自動化測試系統的建立

2.1 確定測試需求

在設計和建立自動化測試體系之前首先要確定測試的需求,自動化測試架構師完成全面的軟件結構,需要進一步的考慮工程師的測試需求,優先確定軟件測試的各種限制因素,其中測試需求又可分為多種,如測試范圍的確定,同時除了現在的測試需求以外,還需要評估未來的需求,其次預算與時間、測試系統的期望壽命、錯誤診斷功能等其他測試需求、操作員的技術水平、產量等等均應考慮在內[3]。

2.2 最佳的硬件選擇

硬件的選擇以及測試系統的設計是一件棘手的任務,必須做出正確的選擇,以避免在被測試系統的使用壽命中花額外的費用。例如,沒有在機柜預留足夠的閑置空間會導致整個測試系統的重新設計,這樣會花費數千美元造成數月的停工。當設計安裝機柜系統時,一些關鍵的因素是必須考慮的,包括用于機殼,固定裝置,互連系統及開關的機柜類型、機柜尺寸、及配電系統[4]。

3.3 軟件設計的最佳實踐

在測試系統設計和開發過程中,軟件扮演了非常重要的角色,一般架構工程師推薦采用的測試系統架構前三層都是面向軟件的,而軟件設計的最佳實踐主要是測試執行的最佳實踐,測試執行利用它按預定義流程來快速持續地執行一系列的測試(比如各功能模塊)。對所有設備都相同的操作(例如生成報告、序列號輸入)應當利用測試執行程序來處理針對特定待測設備的操作則應該在代碼模塊內開發。由于測試執行程序可以處理通用的操作,因此無需再為多個設備編寫相同的代碼,然而可以幫助開發人員節省時間[5]。

持續集成在自動化測試體系中至少有六點要做到自動化,它們分別是自動化的運行測試、自動生成可部署的二進制成品、自動將代碼部署到預發布環境、自動為CodeBase打上標簽、自動運行回歸測試、自動生成報告等[6]。

3 結束語

持續集成的自動化測試部署可提高開發團隊的生產力,改善代碼質量并降低項目執行風險。而且它為開發團隊帶來了一個新的發展機會,當開發人員開發新功能時,他們開始考慮如何將它們構建為幾個小任務并定期進行工作,而不是在長期開發分支上開發新的項目,最終提交大量的代碼,鼓勵開發人員在提交源代碼時提交相應的自動化測試用例。在未來的工作中,首先對部署持續集成的自動化測試做準備;其次考慮通過增加測試來增加自動測試覆蓋率,并通過計算性能瓶頸來減少持續集成構建中的持續時間。持續集成系統能夠為項目構建和質量指標給予及時的反饋,有些集成可以反饋功能完成度和產品缺陷率。通過持續集成開發人員能夠清楚的知道自己對軟件修改之后與其它功能造成的影響程度,并及時給予最優解決方案,從而可以提高開發團隊對產品的信心度。可見持續集成在自動化測試體系建設中是非常重要的。

[1]Daniel J.Mosley.軟件測試自動化[M].機械工業出版社, 2003.10.

[2]馬雪英, 姚礪, 葉澄清.回歸測試自動化工具研究[J].計算機科學,2005.

[3]李念強, 孫傳偉, 王玉泰.分布式測試平臺的應用研究[J].計算機測量與控制, 2003, 11(12): 931-933.

[4]杜慶峰.高級軟件測試技術[M].北京: 清華大學出版社, 2011.

[5]溫素劍.零成本實現 Web自動化測試--基于Selenium和 Bromine[M]..北京: 電子工業出版社, 2011.

猜你喜歡
系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
基于UG的發射箱自動化虛擬裝配系統開發
半沸制皂系統(下)
FAO系統特有功能分析及互聯互通探討
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統 德行天下
PLC在多段調速系統中的應用
主站蜘蛛池模板: 中文字幕免费在线视频| 手机精品视频在线观看免费| 在线播放国产一区| 国产精品所毛片视频| 91系列在线观看| 国产福利不卡视频| 91久久国产综合精品女同我| 第一页亚洲| 凹凸精品免费精品视频| 在线观看免费黄色网址| 国产精品三级专区| 亚洲第一区在线| 伊人天堂网| 2022国产91精品久久久久久| 欧美成人手机在线观看网址| 午夜少妇精品视频小电影| 91色在线观看| 国产91精品最新在线播放| 日韩无码白| 国产黑丝一区| 国产H片无码不卡在线视频 | 国产在线麻豆波多野结衣| 欧美在线天堂| 国产自在线播放| 亚洲欧美日韩视频一区| 四虎亚洲国产成人久久精品| 在线播放精品一区二区啪视频| 影音先锋亚洲无码| 亚洲日本韩在线观看| 国产91导航| 欧美成a人片在线观看| 99热在线只有精品| 热99精品视频| 99久视频| 国产Av无码精品色午夜| 日本一本正道综合久久dvd| 亚洲国产成人久久77| 亚洲日本中文字幕天堂网| 成人午夜免费观看| 午夜免费视频网站| 国产成人三级| 国产三级精品三级在线观看| 国产精品护士| www.99精品视频在线播放| 国产福利小视频在线播放观看| 色婷婷在线影院| 日韩欧美国产中文| 亚洲精品你懂的| 欧美精品成人| 国产一区二区三区精品久久呦| 国产乱子伦精品视频| 国产熟睡乱子伦视频网站| 久久久久亚洲AV成人网站软件| 19国产精品麻豆免费观看| 亚洲91精品视频| 国产精品jizz在线观看软件| 日韩天堂网| 一级做a爰片久久毛片毛片| 中国国产高清免费AV片| 色网在线视频| 国产日韩欧美视频| 国产一区二区免费播放| 午夜啪啪福利| 精品国产黑色丝袜高跟鞋| 国产精品内射视频| 亚洲第一黄色网| 欧美日韩综合网| 亚洲精品中文字幕午夜| 91成人精品视频| 一区二区三区国产| 青草视频网站在线观看| 国产精品美女免费视频大全| 欧美日韩在线第一页| 欧美亚洲欧美区| 国产精品香蕉| 日韩精品资源| 欧美亚洲欧美区| 日本道综合一本久久久88| 国产在线观看成人91| 操美女免费网站| 99精品这里只有精品高清视频| 精品久久久久成人码免费动漫|