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

基于Watir框架的Web自動化測試

2015-05-30 13:14:14許瀚青姚礪
科技創(chuàng)新與應(yīng)用 2015年20期

許瀚青 姚礪

摘 要:在迭代開發(fā)模式中需要執(zhí)行大量的回歸測試,為了提高測試效率和減輕手工測試的壓力,提出了一種Web自動化的回歸測試框架。通過對現(xiàn)有測試自動化工具的對比研究,文章選擇Watir作為基本自動化框架,并對其進行封裝修改生成一套新的Web自動化測試框架SAFIR。實際使用SAFIR進行回歸測試,和手工測試相比效率提高了70%,大幅減少了回歸測試上的人工投入。

關(guān)鍵詞:回歸測試;Web測試;自動化測試框架;Watir

引言

文章從Web自動化測試的種類,主流的測試工具和框架,以及Watir在網(wǎng)頁自動化測試方面的優(yōu)勢,基于Watir的自動化測試框架并結(jié)合產(chǎn)品本身特點,分析將Watir框架進行二次開發(fā)和封裝的可行性,最后得出結(jié)論,將基于Watir的自動化測試系統(tǒng)投入到回歸測試中去。

1 Web自動化技術(shù)

1.1 自動化測試簡介

Web自動化測試是使用軟件工具通過編寫腳本的方式, 對Web應(yīng)用的界面主要元素進行一系列模擬手動的操作。

目前,市場上有很多Web自動化測試工具,QTP、Test Manager以及Watir都是不錯的選擇。QTP比較簡單易學(xué),但QTP執(zhí)行速度較慢而且經(jīng)濟成本較高。Test Manager是微軟Visual Studio的一個測試組件,使用的用戶面狹窄且資源有限。Watir支持IE、FireFox和Chrome等主流瀏覽器,而且是個開源自動化工具。經(jīng)過對比最終選擇Watir作為自動化框架。

1.2 Watir簡介

Watir是一種基于網(wǎng)頁模式的自動化功能測試框架,用Ruby語言在Selenium-Webdriver的基礎(chǔ)上進行二次封裝,從而使得其API能夠更好的符合Ruby語言的規(guī)范。而Ruby語言本身作為一種面向?qū)ο蟮哪_本語言,運行效率高,語法簡潔,可閱讀性強,作為測試用例的腳本語言非常適合。

Watir通過DOM技術(shù)來獲取Web頁面的元素。作為一個的開源自動化測試框架,已經(jīng)有很多公司例如HP、Facebook、阿里巴巴等都在使用它對Web應(yīng)用進行功能測試和回歸測試。

1.3 Watir框架存在的不足

雖然Watir已滿足基本的自動化測試需求,但是它還在存在一些不足,譬如對外部文件數(shù)據(jù)的讀取、測試日志的建立與導(dǎo)出、訪問數(shù)據(jù)庫等功能,這些Watir都還沒有實現(xiàn)。而實現(xiàn)這些功能可以更加提高自動化測試的效率。因此,在使用Watir的基礎(chǔ)上,對它進行二次開發(fā),實現(xiàn)上述功能,完善watir自動化測試框架成為了課題。

2 Watir自動化測試設(shè)計與實現(xiàn)

2.1 產(chǎn)品背景以及SAFIR框架簡介

Service Manager 是一款服務(wù)解決方案,IT部門能夠通過這套系統(tǒng)對企業(yè)的部門和個人日常IT事務(wù)進行統(tǒng)一管理。由于這個系統(tǒng)基于B/S架構(gòu),所以測試時都是在網(wǎng)頁瀏覽器上完成。公司為了提高回歸測試效率,結(jié)合產(chǎn)品本身的特點,針對Watir框架中存在的不足,對常用頁面元素進行封裝,添加了文件讀取、日志記錄、訪問數(shù)據(jù)庫功能,開發(fā)出一套新的Web自動化測試框架-SAFIR(SM Automation Framework in Ruby)。

2.2 SAFIR框架的設(shè)計和實現(xiàn)

作為一套自動化網(wǎng)頁測試工具,SAFIR支持獲取網(wǎng)頁的頁面元素的功能,在獲取頁面元素之后對元素進行點擊、輸入,選中,復(fù)制和粘貼等操作。在測試數(shù)據(jù)處理方面,SAFIR能靈活導(dǎo)入導(dǎo)出文件,并且讀取常用的數(shù)據(jù)文件類型比如csv、txt和xml。從準備數(shù)據(jù),到執(zhí)行測試步驟,驗證預(yù)期與實際結(jié)果都會有日志記錄下來,如果出現(xiàn)失敗場景腳本會立即終止失敗用例,并對失敗的場景進行截圖保存到日志文件夾,以便測試工程師分析失敗原因。

在回歸測試過程中,為了提高自動化代碼的復(fù)用性,面向?qū)ο蟮乃悸吩O(shè)計測試框架是必須的,在框架底層我們定義了一個WebObject基類,他主要作用是實例化網(wǎng)頁對象、定義log日志函數(shù)、定義失敗場景的截圖函數(shù),Assert()結(jié)果驗證函數(shù)。WebFrame類繼承WebObject基類,初始化主要頁面的頁面區(qū)域,如導(dǎo)航面板、列表、詳細信息、工具欄等區(qū)域,對他們進行封裝。再根據(jù)每個區(qū)域內(nèi)元素的特點定義所需要的方法和屬性。在這兩個底層類之上是一個公共函數(shù)庫Common.rb,有許多使用頻率極高的動作函數(shù)被定義在這個公共類庫里,比如數(shù)據(jù)導(dǎo)入、導(dǎo)出、清空、用戶登入登出和增刪改查等等。在寫測試腳本時,我們只需調(diào)用這幾個區(qū)域中對象或者調(diào)用公共函數(shù)庫的函數(shù),即能達到代發(fā)復(fù)用性的目的。

2.3 測試用例層的設(shè)計

實現(xiàn)框架以后,利用框架提供的方法和屬性,編寫測試腳本。在SAFIR框架之中,測試腳本的執(zhí)行是一個線性的過程。一個用例可分為四部分,首先是定義引用的框架文件,例如引用webObject.rb、Commons.rb、WebFrame.rb等文件。測試的前置工作,例如登錄系統(tǒng),數(shù)據(jù)備份都由Setup()來完成。Test()方法塊,這是測試用例的核心,每個步驟封裝成step1()、step2()等小的方法體定義在Test()方法中,目的是提高腳本的可讀性和可維護性。當測試步驟做完以后,Teardown()方法塊會刪除測試數(shù)據(jù)、重置的文件、退出登錄、關(guān)閉瀏覽器。

3 Watir自動化測試的執(zhí)行結(jié)果

SAFIR現(xiàn)已應(yīng)用于公司的的產(chǎn)品開發(fā)部,主要對于開發(fā)部內(nèi)幾款的Web 應(yīng)用產(chǎn)品進行回歸測試。在相同的測試環(huán)境中對同一個功能模塊分別進行自動化測試和手工測試,和以往手工回歸測試相比,自動化的回歸測試縮減了70%的測試時間,而找到bug的概率卻比手動回歸測試提高了15%。可見自動化在回歸測試中扮演者很重要的角色。隨著產(chǎn)品開發(fā)不斷深入,更多的自動化測試用例會被添加到回歸測試之中,這樣可以得到倍數(shù)與前期回歸測試的效率提高。

4 結(jié)束語

文章通過對網(wǎng)頁自動化測試的介紹和回歸測試特點的分析,選擇了開源自動化測試工具Watir作為框架,并結(jié)合公司項目產(chǎn)品設(shè)計了自動化回歸測試框架SAFIR。SAFIR中對于自動化測試過程中的網(wǎng)頁元素定位和操作、腳本編寫、測試執(zhí)行和測試結(jié)果分析都有相應(yīng)的規(guī)范和模塊,測試人員易于根據(jù)模塊來理解測試框架,進而將SAFIR應(yīng)用到實際測試作業(yè)中。相對于傳統(tǒng)的手動測試,利用SAFIR進行回歸測試提高了70%的測試效率。把SAFIR投入到企業(yè)的回歸測試,對于此類大量的重復(fù)測試工作具有很高的實用性,并帶來可觀的經(jīng)濟效益。

參考文獻

[1]楊合生,陳昱 ,張捷.軟件自動化測試:入門、進階與實戰(zhàn)[M].電子工業(yè)出版社,2012:40-45.

[2]陳能技.軟件測試技術(shù)大全:測試基礎(chǔ) 流行工具 項目實戰(zhàn)(第2版)[M].人民郵電出版社,2011:230-245.

[3]劉曉明.軟件測試及其自動化模型的研究[M].江南大學(xué),2009:90-101.

[4]沈佳宇,喻擎蒼.基于Watir框架的Web自動化測試[J].2012.

[5]王晴.Web自動化測試研究與Watir框架開發(fā)[D].武漢理工大學(xué),2011.

作者簡介:許瀚青,男,籍貫:上海,職務(wù):軟件測試工程師,研究方向:軟件自動化測試。

主站蜘蛛池模板: 亚洲天堂久久久| 欧美国产在线精品17p| 国产鲁鲁视频在线观看| 日韩免费毛片视频| 国产在线一区视频| 国产精品3p视频| 久久免费看片| 亚洲精品免费网站| 国产一区二区丝袜高跟鞋| 欧美激情视频在线观看一区| 青草免费在线观看| 国产91色| 国产综合色在线视频播放线视| 国产精品成人一区二区| 中文字幕亚洲另类天堂| 亚洲一级毛片| 日韩AV无码免费一二三区| 精品一区二区三区四区五区| 一级全黄毛片| 精品第一国产综合精品Aⅴ| 久久亚洲国产视频| 日本高清免费不卡视频| 色屁屁一区二区三区视频国产| 97国产精品视频自在拍| 22sihu国产精品视频影视资讯| 久久黄色影院| 精品无码国产自产野外拍在线| 特级做a爰片毛片免费69| 中文字幕va| 亚洲中文精品久久久久久不卡| 亚洲成在线观看| 国产一级一级毛片永久| 精品福利网| 91po国产在线精品免费观看| 国产成人狂喷潮在线观看2345| 亚洲91精品视频| 久久精品亚洲中文字幕乱码| 亚洲美女视频一区| 日韩免费毛片视频| 亚洲a级在线观看| 久久久久无码精品| 尤物精品国产福利网站| 国产成人91精品免费网址在线 | 亚洲天堂网视频| av尤物免费在线观看| 亚洲美女一级毛片| 高清精品美女在线播放| 国产尤物在线播放| 国产成人三级| 国产本道久久一区二区三区| 免费国产黄线在线观看| 欧美亚洲激情| 亚洲精品视频网| 欧美精品v欧洲精品| 91无码国产视频| 色婷婷综合在线| 特级做a爰片毛片免费69| 制服丝袜在线视频香蕉| 中日无码在线观看| 国产精品亚洲综合久久小说| 国产SUV精品一区二区6| 亚洲成a人在线观看| 亚洲成人播放| 亚洲欧洲天堂色AV| 亚洲无码不卡网| 欧洲高清无码在线| 国产精品开放后亚洲| 国产99视频在线| 亚洲精品无码av中文字幕| 美女国产在线| 亚洲国产日韩视频观看| 毛片在线区| 国产乱论视频| 欧美不卡视频一区发布| 久久久久国色AV免费观看性色| 波多野结衣无码中文字幕在线观看一区二区| 国产啪在线91| 91蜜芽尤物福利在线观看| 亚洲va欧美va国产综合下载| 高清无码一本到东京热| 国产精品漂亮美女在线观看| 制服丝袜亚洲|