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

自動化測試解決方案研究

2017-08-24 02:48:34馬睿
科技創(chuàng)新與應(yīng)用 2017年21期

馬睿

摘 要:自動化測試是通過編寫腳本來模擬操作,以替代手工執(zhí)行系統(tǒng)測試。文章對自動化測試平臺架構(gòu)和Selenium自動化測試工具進(jìn)行研究,使用三種主流語言編寫自動化測試腳本,并使用不同瀏覽器進(jìn)行測試,結(jié)果表明:與傳統(tǒng)測試相比,開展自動化測試有縮時(shí)間、降差異、提質(zhì)量、零干預(yù)等優(yōu)勢。

關(guān)鍵詞:自動化測試;Robot Framework;Selenium;Jenkins;持續(xù)集成

中圖分類號:F407.67 文獻(xiàn)標(biāo)志碼:A 文章編號:2095-2945(2017)21-0049-02

1 概述

目前主流的測試手段原始,基本上都是通過手工方式進(jìn)行各類測試,每次軟件版本更新時(shí)項(xiàng)目組耗費(fèi)大量時(shí)間和精力去重復(fù)執(zhí)行測試用例,甚至不少軟件為趕上線進(jìn)度,不回歸測試原有功能即發(fā)布上線的情況,軟件質(zhì)量卻很難有顯著的提升。而軟件維護(hù)占去了軟件生命周期80%的時(shí)間,我們迫切的需要找到方法解決日常維護(hù)工作中遇到的上述問題,即引入自動化測試技術(shù)。

自動化測試是把以人為驅(qū)動的測試行為轉(zhuǎn)化為機(jī)器執(zhí)行,使軟件測試在預(yù)設(shè)條件下自動運(yùn)行,并得出運(yùn)行結(jié)果的過程。通過自動化的測試腳本來模擬系統(tǒng)操作及斷言預(yù)期結(jié)果來替代手工執(zhí)行測試用例,大大提高測試的效率和質(zhì)量,將測試人員從重復(fù)的用例執(zhí)行中解放出來。

2 搭建自動化測試平臺

2.1 自動化測試平臺架構(gòu)

自動化測試平臺由自動化測試框架Robot Framework和Selenium、持續(xù)集成工具Jenkins、測試腳本庫SVN三部分組成。一個(gè)完整的自動化測試作業(yè)的過程如下:

Step1.實(shí)際運(yùn)行時(shí)測試人員編寫自動化的測試腳本提交到SVN,觸發(fā)Jenkins從SVN服務(wù)器下載最新的測試腳本,同時(shí)啟動測試框架開始測試腳本的執(zhí)行。在平臺中,自動化測試不但可以通過輪詢測試腳本的更新來觸發(fā),還可以定時(shí)觸發(fā)、手工觸發(fā)或者通過其他自定義行為來觸發(fā)腳本執(zhí)行。

Step2. Robot Framework或Selenium通過Webdriver API啟動并控制瀏覽器訪問被測系統(tǒng),并依賴內(nèi)部的TestLibraries解析和執(zhí)行測試腳本,生成測試報(bào)告。

Step3.測試報(bào)告和日志將被回傳至Jenkins,最終由Jenkins以郵件的形式發(fā)送給測試人員。

2.2 Robot Framework框架優(yōu)化

由于Robot Framework具有過于繁瑣的先天性劣勢,我們對Robot Framework測試框架進(jìn)行了調(diào)整和優(yōu)化。例如將測試腳本中重復(fù)使用的測試步驟進(jìn)行提取[3]。

以登錄功能為例,“Log In System”關(guān)鍵字為登錄系統(tǒng)的函數(shù),每個(gè)測試腳本都會使用到該函數(shù)。如不使用關(guān)鍵字,測試腳本的實(shí)現(xiàn)如圖3所示。如使用關(guān)鍵字,測試腳本的實(shí)現(xiàn)如圖4所示。通過提取關(guān)鍵字,可以提升腳本質(zhì)量,降低代碼冗余。

在研究過程中我們共封裝了106個(gè)腳本事件,共合并代碼行數(shù)3078行,整個(gè)過程節(jié)約代碼量越1.7萬行,大大降低了測試腳本的編寫難度,提升編寫效率。

2.3 Selenium自動化測試研究

在Robot Framework測試框架研究之后,我們還對Selenium展開了研究。

2.3.1 Selenium自動化測試工具的研究

Selenium是代碼驅(qū)動類型的Web自動化測試框架,支持多種語言,相對更為靈活,對測試人員的編碼能力要求較高,能夠更好地滿足個(gè)性化的測試需求。Selenium WebDriver是Selenium最新研發(fā)的,而且是目前使用最多的一款工具。我們對Selenium WebDriver進(jìn)行了研究,包括實(shí)現(xiàn)原理、常用的測試方法和Selenium的使用方法[4]。

2.3.2 三種編程語言的自動化測試腳本

在Selenium的研究基礎(chǔ)之上,我們分別使用Java、C#和Python語言編寫了測試腳本進(jìn)行自動化測試POC,以下簡單介紹使用不同編程語言搭建Selenium測試環(huán)境并實(shí)現(xiàn)腳本的方法。

(1)Selenium+Java。

引入selenium-java-2.53.1.jar、selenium-server-standalone-2.53.0.jar到Java工程后,即可開始寫自動化測試腳本,結(jié)合java的單元測試框架Junit4的annotation主鍵進(jìn)行斷言。

(2)Selenium+C#。

引入WebDriver.Support.dll、ThoughtWorks.Selenium.Core.dll、Selenium.WebDriverBackedSelenium.dll、WebDriver.dll到測試工程,使用.net的單元測試工具Nunit或者M(jìn)Stest進(jìn)行測試腳本的編寫,參照.net單元測試的運(yùn)行方法可以順序地運(yùn)行自動化測試腳本并跟蹤測試運(yùn)行情況。

(3)Selenium+Python。

以Python實(shí)現(xiàn)測試腳本,首先需要通過pip安裝Selenium,并在項(xiàng)目中引入selenium.common.exceptions、selenium.webdriver.common.keys,selenium webdriver最后使用unittest就可以進(jìn)行腳本邏輯和斷言的編寫了。

最終的測試結(jié)果表明,三種語言編寫的測試腳本對同一系統(tǒng)進(jìn)行自動化測試得到了相同的缺陷列表,表明Selenium的自動化測試腳本運(yùn)行結(jié)果只和腳本邏輯有關(guān),和編寫的語言無關(guān)。這個(gè)特性可以方便我們使用熟悉的語言進(jìn)行腳本編寫[5],極大地減少學(xué)習(xí)成本。

3 自動化測試平臺的價(jià)值

與其他自動化測試工具相比,我們搭建的自動化測試平臺具有如下優(yōu)點(diǎn):支持多種編程語言(Java、C#、Python、Ruby、Php、Perl、JavaScript);支持多種瀏覽器測試(IE、Firefox、Chrome、Safari、Opera);支持?jǐn)?shù)據(jù)驅(qū)動測試和關(guān)鍵字驅(qū)動測試;開源軟件,無需采購經(jīng)費(fèi),節(jié)約項(xiàng)目成本。

此外,若測試失敗,平臺可自動獲取當(dāng)前頁面快照截圖,保存失敗現(xiàn)場;如遇突發(fā)情況可自動發(fā)送報(bào)告、截圖發(fā)至郵箱,及時(shí)通知相關(guān)人員,便于及時(shí)、全面地了解測試結(jié)果,做到測試質(zhì)量的快速跟進(jìn)和及時(shí)反饋,主動發(fā)現(xiàn)和作為,改變過去直接發(fā)布上線后發(fā)現(xiàn)問題的“救火式”修復(fù)。

參考文獻(xiàn):

[1]陳江勇,許力,張輝,等.Web自動化測試框架的設(shè)計(jì)與實(shí)現(xiàn)[J].福建師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2013(04).

[2]齊濤.Robot Framework自動化測試修煉寶典[M].電子工業(yè)出版社,2015.

[3]朱宏峰.基于關(guān)鍵字驅(qū)動的Web自動化測試的研究[J].硅谷,2009(24).

[4]趙卓.Selenium自動化測試指南[M].中國郵電出版社,2013.

[5]程佩.基于Selenium WebDriver和Selendroid的自動化測試的研究[D].湖北:華中師范大學(xué),2016.

主站蜘蛛池模板: 成·人免费午夜无码视频在线观看 | 亚洲Aⅴ无码专区在线观看q| 四虎国产成人免费观看| 国产女同自拍视频| 欧美成人精品高清在线下载| 亚洲成AV人手机在线观看网站| 久久精品国产亚洲麻豆| 91福利在线观看视频| 成人国产三级在线播放| 国产剧情一区二区| 国产精品一区二区久久精品无码| 国产在线观看高清不卡| 久久香蕉国产线看观看亚洲片| 97久久免费视频| 亚洲国产精品一区二区第一页免| 国产成人8x视频一区二区| 国产成人夜色91| 亚洲AV无码久久精品色欲| 这里只有精品在线播放| 亚洲成a∧人片在线观看无码| 日本在线免费网站| 麻豆精品在线视频| 超级碰免费视频91| 黄色免费在线网址| 久久久精品无码一二三区| 国产白浆在线| 真实国产乱子伦高清| 老司国产精品视频91| 国产欧美日本在线观看| 综合天天色| 亚洲一级毛片在线播放| 久久 午夜福利 张柏芝| 欧美人与牲动交a欧美精品| 精品久久久久久成人AV| 高清亚洲欧美在线看| 国产精品亚洲va在线观看 | av一区二区无码在线| 高清欧美性猛交XXXX黑人猛交| 国产一区二区福利| 国产麻豆aⅴ精品无码| 久久综合丝袜日本网| 欧美无专区| 国产精品部在线观看| 国产喷水视频| 婷婷伊人久久| 91亚瑟视频| 中文字幕欧美日韩高清| 欧美高清三区| 亚洲中文字幕国产av| 91在线国内在线播放老师| 全色黄大色大片免费久久老太| 日韩AV无码免费一二三区| 2021国产乱人伦在线播放| 欧美国产精品不卡在线观看| 国产精品自拍合集| 久久久久久高潮白浆| 日韩在线2020专区| 亚洲精品无码av中文字幕| 国产精品lululu在线观看| 亚洲视频免费播放| 国产欧美日韩在线一区| 亚洲日本中文综合在线| 成人午夜亚洲影视在线观看| 国产69精品久久久久孕妇大杂乱| 国产成人久久综合777777麻豆| 国产精品漂亮美女在线观看| 国产成人精品男人的天堂| 欧美成人精品一区二区| 色播五月婷婷| 午夜国产精品视频黄| 54pao国产成人免费视频| 美臀人妻中出中文字幕在线| 久久久久亚洲AV成人人电影软件| 99久久国产自偷自偷免费一区| 亚洲第一视频区| 99久久亚洲综合精品TS| 亚洲中文字幕在线精品一区| 99视频精品全国免费品| 亚洲人成网站在线播放2019| 在线播放国产99re| 日本一区二区不卡视频| 国产欧美成人不卡视频|