亚洲成人一区在线_久久综合九色综合欧美98_久久精品一区二区三区不卡牛牛 _亚洲成人在线网站

您現在的位置: 通信界 >> 測試儀表 >> 技術正文  
 
基于數據驅動的自動化測試的研究方案實現
[ 通信界 / 維庫開發(fā)網 / www.sese521.com / 2010/7/21 16:13:06 ]
 

  摘要:本文介紹了基于數據驅動的自動化測試以及其實現方法,包括軟件是否適合自動化測試的可行性分析;開發(fā)測試前的需求分析;基于數據驅動的測試框架的實現以及其維護和擴充。自動化測試是一個比較新的研究領域,也是近來很具爭議性的研究話題,對于自動化測試引入之后的利弊,眾說紛紜。當然自動化測試也在爭議中顯現出了強大的生命力,其測試效率高、重用性好等優(yōu)點得到了廣泛的認同。本文中所介紹的自動化測試框架結構在很多大型的軟件系統中得到了應用,取得了良好的效果。

0 引言

  隨著社會的不斷發(fā)展和信息化的不斷普及,各種軟件越來越多,在日常生活中也起著越來越重要的作用,再加上客觀系統的復雜性,無論經驗多豐富的開發(fā)人員、無論采用哪種開發(fā)模型開發(fā)出來的軟件,每個階段的技術復審也不可能毫不遺漏地查出和糾正所有的錯誤,因此如何才能把新的軟件做得更穩(wěn)定、錯誤更少呢?測試!統計表明,在典型的軟件開發(fā)項目中,軟件測試工作量往往占軟件開發(fā)總工作量的40%以上。

  測試是軟件能否通向市場的最后也是最重要的一關。傳統的測試方法是手工測試,目前大部分都是采用此方法,其特點就是簡單,但是它存在的問題非常多。手工測試可能引入人為的輸入錯誤,尤其在數據量大的情況下;另外大量重復性的手工測試可能成本較高,如果考慮軟件發(fā)生改動而需要重復手工測試的情況,這個成本還會更高;沒有辦法對組件進行隔離的測試,從而導致發(fā)現問題和解決問題的成本都太高。在很多項目中,測試人員的所有任務實際上都是手動處理的,而實際上有很大一部分重復性強的測試工作是可以獨立出來自動實現的。

  針對手工測試的缺點,自動化測試應運而生。相比手工測試,自動化測試的優(yōu)勢很多;規(guī)范測試流程,提高測試效率、測試覆蓋率等。很多人對自動化測試存在誤區(qū),把其理解為找到一種自動化測試工具,把它應用到軟件工程項目中,自動化測試工具只是被看作是一種錄制和回放的工具。事實上自動化測試遠不止這么簡單,錄制和回放僅是自動化測試中的最低級別。目前常把自動化測試分為5個級別,如圖1所示。

 

  現在常用的是基于數據驅動的測試,它是以數據來控制自動化測試的流程和動作的測試,其中數據是獨立于測試用例腳本的,通常以文本文件形式、Excel文件形式、XML文件等形式存在。

1 基于數據驅動自動化測試的實施

1.1 可行性分析

  基于對自動化測試優(yōu)點的分析,很多人對自動化測試存在另一個誤區(qū),認為對于所有的軟件都適合引入自動化測試,且只要引入自動化測試,就會提高測試的效率,降低測試的成本。實際上并非如此,自動化測試也需要開發(fā)和搭建測試框架,創(chuàng)建測試用例,這也就意味著成本的投入。對于一個項目周期很緊的測試項目,按測試方案進行手工測試的效率可能要比自動化測試工具錄制腳本再測試的效率好得多。那么自動化測試工具的價值在什么地方?

  對于一個一次性開發(fā)、沒有后續(xù)版本更新的軟件而言,自動化測試是毫無意義的。但是現在很多軟件都會不斷推出新的版本,在推出新版本的過程中,每次除了測試新加或修改過的模塊,相關聯的舊模塊同樣需要測試,才能保證產品的質量,這樣就需要做大量的重復工作,自動化測試此時就可以創(chuàng)建測試中的可重用模塊,同時還可以覆蓋大部分的功能測試,這樣可以使測試人員從回歸測試中解脫出來,專注于新模塊的測試。所以可以說自動化測試的最大價值在于回歸測試。

  因此,對于一個軟件或其中某些模塊是否適合自動化測試必須要先進行可行性分析,以證明你所選的測試方法的正確性,通常可進行自動化測試的軟件需要滿足以下幾點:

  (1)手工測試復雜度高:

  (2)所選測試用例,實現自動測試的難度低;

  (3)軟件用于自動化測試的模塊界面變化相對不大;

  (4)軟件生命周期長,經常推出新的版本;

  (5)軟件開發(fā)已基本完成,主要用于測試升級版本;

  (6)所選自動化測試框架必須對所測軟件應用界面有有效的支持,且維護管理成本較低。

  另外自動化測試前期需要投入時間和一定的成本投入,故不要一開始就期望有高的回報,其效應會在不斷完善積累中顯現。而且不要期待自動化測試可以發(fā)現每個版本中的大部分錯誤,因為自動化測試主要用于回歸測試,而且產品中每個新版本的大部分bug會在新模塊中出現,所以自動化測試在于長期效應,能保證每個版本產品質量的穩(wěn)定。

1.2 需求分析

  正如開發(fā)軟件需要有需求分析一樣,基于數據驅動的自動化測試本質上也是開發(fā),所以在制定測試方案之前也需要收集測試需求,這樣才能保證自動化測試的成功。

  隨著IT技術的發(fā)展,傳統的開發(fā)人員兼任測試人員的模式已經不能滿足需求,目前大多數較正規(guī)的軟件公司均已采用獨立的測試人員來對軟件進行測試,所以形成了開發(fā)人員、開發(fā)管理者、測試人員、測試管理者的模式。如圖2示。

 

  規(guī)范的測試過程需要上述人員的通力配合,因此在做自動化測試之前應該有一份規(guī)范的文檔,用來描述測試內容、人員安排、測試流程、缺陷管理等。其中開發(fā)管理人員和測試管理人員分別作為開發(fā)團隊和測試團隊的接口,協調兩個團隊的工作,一般來說開發(fā)人員需要在每次對軟件更新后提供詳細的功能文檔,開發(fā)人員還需要提供自動化測試所需要的數據等相關資源,測試人員根據功能文檔創(chuàng)建適合做自動化的測試用例,并建立基于數據驅動的自動化測試工程。

1.3 數據驅動的自動化測試框架結構以及實現

  基于數據驅動的自動化測試不是簡單的錄制回放,而且通過編程的形式來實現每個測試用例,其中數據文件獨立于測試用例,這樣數據的更新對整個測試工程的維護會降低到最小。因此創(chuàng)建自動化測試框架需要有一定的編程基礎。

  本文自動化測試中采取的是三層框架結構,如圖3所示。

 

  其中最底層為UI Driver層,主要負責定義基本的通用元素庫,如按鈕、下拉框、文本框等在每個軟件中都會出現的基本元素;對這些元素的基本操作以及通用操作(如等待某段時間的函數等)。這一層和測試的軟件沒有關系,因此通用性很強,既可以自己開發(fā)也可以用前人開發(fā)好的底層自動化Driver。

  第二層為代理(Agent)層,這一層是建立在被測軟件上,對被測軟件的每一界面(UI)均建立相關的類和對象,方便最上層調用,這一層需根據軟件的不斷更新而更改。

  最上層為測試用例層(TEST Cases),這一層建立在代理層上,代理層建立好之后,可以提供給測試用例層所需的界面元素,使測試用例可以通過對界面元素的操作完成自動化測試過程。這一層是測試用例的實現層,如果有了比較完善、結構合理的底層以及代理層,此層實現起來就會非常簡單。

  其中測試數據以及軟件中元素的ID信息是存放在獨立的XML文件中,測試用例層或者代理層需要用數據時,可以通過統一的接口讀取。這樣的方式不僅可以使整個測試工程結果清晰,最重要的是可以降低整個測試系統的維護費用,這樣才能確保自動化測試的投入回報不斷提升。

1.4 自動化測試的維護和擴充

  自動化測試工程會由于軟件的不斷擴充而必須加以維護和擴充。其中維護是指由于新版本的升級導致的舊的測試用例無法通過,必須加以維護才能正常運行。而擴充則是指由于版本的不斷升級,某些功能已經非常穩(wěn)定,適合于自動化測試,需要新添加一些測試用例來覆蓋這些功能。

  擴充和維護是一個長期的過程,其中需特別注意的是每次自動運行測試用例,必須有個詳細的結果日志來記錄測試用例的通過情況,對于運行失敗的用例,記錄失敗的原因,這樣有利于測試人員通過結果來判斷產品的bug。這里需要特別注意的是,有的測試用例表面上是通過了,但是實際上卻執(zhí)行失敗了,并且結果日志上記錄的是通過,如果出現這樣的情況,而測試人員卻毫無察覺,這就是失敗的自動化,所以對于每次自動化測試的結果,最好能夠建立起核查機制,以確保結果的可靠性。

2 總結

  自動化測試是一個比較新的研究領域,也是近來很具爭議性的研究話題,對于自動化測試引入之后的利弊,眾說紛紜。當然自動化測試也在爭議中顯現出了強大的生命力,其測試效率高、重用性好等優(yōu)點得到了廣泛的認同。本文中所介紹的自動化測試框架結構在很多大型的軟件系統中得到了應用,取得了良好的效果。

 

作者:維庫開發(fā)網 合作媒體:維庫開發(fā)網 編輯:顧北

 

 

 
 熱點技術
普通技術 “5G”,真的來了!牛在哪里?
普通技術 5G,是偽命題嗎?
普通技術 云視頻會議關鍵技術淺析
普通技術 運營商語音能力開放集中管理方案分析
普通技術 5G網絡商用需要“無憂”心
普通技術 面向5G應運而生的邊緣計算
普通技術 簡析5G時代四大關鍵趨勢
普通技術 國家網信辦就《數據安全管理辦法》公開征求意見
普通技術 《車聯網(智能網聯汽車)直連通信使用5905-5925MHz頻段管理規(guī)定(
普通技術 中興通訊混合云解決方案,滿足5G多元業(yè)務需求
普通技術 大規(guī)模MIMO將帶來更多無線信道,但也使無線信道易受攻擊
普通技術 蜂窩車聯網的標準及關鍵技術及網絡架構的研究
普通技術 4G與5G融合組網及互操作技術研究
普通技術 5G中CU-DU架構、設備實現及應用探討
普通技術 無源光網絡承載5G前傳信號可行性的研究概述
普通技術 面向5G中傳和回傳網絡承載解決方案
普通技術 數據中心布線系統可靠性探討
普通技術 家庭互聯網終端價值研究
普通技術 鎏信科技CEO劉舟:從連接層構建IoT云生態(tài),聚焦CMP是關鍵
普通技術 SCEF引入需求分析及部署應用
  版權與免責聲明: ① 凡本網注明“合作媒體:通信界”的所有作品,版權均屬于通信界,未經本網授權不得轉載、摘編或利用其它方式使用。已經本網授權使用作品的,應在授權范圍內使用,并注明“來源:通信界”。違反上述聲明者,本網將追究其相關法律責任。 ② 凡本網注明“合作媒體:XXX(非通信界)”的作品,均轉載自其它媒體,轉載目的在于傳遞更多信息,并不代表本網贊同其觀點和對其真實性負責。 ③ 如因作品內容、版權和其它問題需要同本網聯系的,請在一月內進行。
通信視界
華為余承東:Mate30總體銷量將會超過兩千萬部
趙隨意:媒體融合需積極求變
普通對話 苗圩:建設新一代信息基礎設施 加快制造業(yè)數字
普通對話 華為余承東:Mate30總體銷量將會超過兩千萬部
普通對話 趙隨意:媒體融合需積極求變
普通對話 韋樂平:5G給光纖、光模塊、WDM光器件帶來新機
普通對話 安筱鵬:工業(yè)互聯網——通向知識分工2.0之路
普通對話 庫克:蘋果不是壟斷者
普通對話 華為何剛:挑戰(zhàn)越大,成就越大
普通對話 華為董事長梁華:盡管遇到外部壓力,5G在商業(yè)
普通對話 網易董事局主席丁磊:中國正在引領全球消費趨
普通對話 李彥宏:無人乘用車時代即將到來 智能交通前景
普通對話 中國聯通研究院院長張云勇:雙輪驅動下,工業(yè)
普通對話 “段子手”楊元慶:人工智能金句頻出,他能否
普通對話 高通任命克里斯蒂安諾·阿蒙為公司總裁
普通對話 保利威視謝曉昉:深耕視頻技術 助力在線教育
普通對話 九州云副總裁李開:幫助客戶構建自己的云平臺
通信前瞻
楊元慶:中國制造高質量發(fā)展的未來是智能制造
對話亞信科技CTO歐陽曄博士:甘為橋梁,攜"電
普通對話 楊元慶:中國制造高質量發(fā)展的未來是智能制造
普通對話 對話亞信科技CTO歐陽曄博士:甘為橋梁,攜"電
普通對話 對話倪光南:“中國芯”突圍要發(fā)揮綜合優(yōu)勢
普通對話 黃宇紅:5G給運營商帶來新價值
普通對話 雷軍:小米所有OLED屏幕手機均已支持息屏顯示
普通對話 馬云:我挑戰(zhàn)失敗心服口服,他們才是雙11背后
普通對話 2018年大數據產業(yè)發(fā)展試點示范項目名單出爐 2
普通對話 陳志剛:提速又降費,中國移動的兩面精彩
普通對話 專訪華為終端何剛:第三代nova已成為爭奪全球
普通對話 中國普天陶雄強:物聯網等新經濟是最大機遇
普通對話 人人車李健:今年發(fā)力金融 拓展汽車后市場
普通對話 華為萬飚:三代出貴族,PC產品已走在正確道路
普通對話 共享退潮單車入冬 智享單車卻走向盈利
普通對話 Achronix發(fā)布新品單元塊 推動eFPGA升級
普通對話 金柚網COO邱燕:天吳系統2.0真正形成了社保管
主站蜘蛛池模板: 午夜免费电影一区在线观看 | 国产精品中文字幕在线| 国产麻豆一区二区三区在线观看| 久精品国产欧美| 国产成人精品免高潮在线观看| 久久久久久亚洲精品不卡| 久久国产精彩视频| 久久这里精品国产99丫e6| 日韩中文在线中文网三级| 91精品久久久久久久久久久| 久久视频在线免费观看| 国内精品伊人久久| 韩国v欧美v日本v亚洲| 久久国产精品亚洲| 欧美精品一区三区在线观看| 日韩欧美一区二区在线观看| 成人精品一区二区三区电影免费| 91精品国自产在线观看| 欧美激情一级欧美精品| 国产精品无av码在线观看| 欧美精品久久久久久久久久久| 亚洲视频导航| 亚洲一区在线直播| 国产在线观看精品| 精品国产一区二区三区久久久狼| 久久久久免费视频| 中文字幕日韩精品久久| 亚洲激情免费视频| 亚洲91精品在线观看| 中文网丁香综合网| 欧美一级视频一区二区| 极品日韩久久| 国产精品视频免费观看www| 精品网站在线看| 欧美 日韩 国产 高清| 亚洲中文字幕无码一区二区三区| 午夜精品理论片| 国产精品一区二区三区观看| 午夜精品久久久久久久无码| 久久亚洲国产精品| 国产三级精品网站|