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

數據驅動和關鍵字驅動的研究與應用

2017-01-20 09:56:35陳臘梅
軟件 2016年4期

陳臘梅

摘要:測試自動化是大型軟件測試的一個重要測試環節,可以節省測試人力,對待測軟件做最基本的評估,作用不可替代。但是自動化測試如果組織設計不到位,測試效果會比較差,已經做好的自動化成果也不能得到很好的應用。本文介紹的數據驅動和關鍵字驅動就是讓測試數據從自動化腳本中分離出來單獨維護,很好的解決了測試腳本的重用和維護問題。

關鍵詞:自動化測試;數據驅動;關鍵字驅動;測試庫

中圖分類號:TP39 文獻標識碼:A DOI:10.3969/j.issn.1003-6970.2016.04.021

0 引言

用戶需求月新日異,軟件的升級和換代很頻繁。軟件新老版本數據、功能的兼容性是必須要保證的,所以軟件測試中數據核查和比對是非常常見的測試內容。這項工作繁瑣而重復,而且極容易出錯,迫切需要實現自動化比對。

自動化測試的最基本要求是,測試內容重復、測試結構單一、測試用例變化比較小。可是我們實際面對要比對的數據卻是多種多樣的,導致自動化測試腳本頻繁變更,增加了腳本的測試和維護成本。基于上述問題,本文參考現今比較流行的關鍵字驅動技術,實現了測試數據和測試腳本分離。這樣測試人員只需要按照一定格式來編寫數據,定義對應的測試動作(關鍵字)就能實現自動化比對。在軟件測試的過程中,需要對軟件產品的重要參數進行比對。如果需要比對的參數的數目巨大。手工測試的工作量就比較大。

本文研究了當前最主要的自動化測試方法,并在這些方法中找到最適合本軟件的自動化測試方法。以實現自動化比對軟件參數為例,本文介紹了幾種自動化測試方法。重點介紹關鍵字驅動的自動化測試的基本理論,并且在實踐中使用了關鍵字驅動自動化測試,分析了關鍵字驅動測試的優點和缺點,得出了其良好的可執行、可推廣的特性。

1 測試腳本和測試庫

自動化測試即是直接對被測對象編寫測試腳本,實現自動化測試,如圖:

如果被測對象比較復雜,測試腳本也要[模塊化],從而實現腳本重用,即是測試庫。如圖:

這種通過編寫測試腳本直接測試被測系統解放了繁瑣的手工測試,無疑是一個重大進步。但是測試人員新增了測試腳本的學習維護工作,需要有比較強的編碼能力,不適合自動化測試的推廣和優化。

2 數據驅動

針對上面說的缺點,研究人員推出一種新的測試技術,即數據驅動。數據驅動簡單的說:將測試數據從測試腳本中分離出來。熟悉被測系統業務的測試人員負責編寫測試數據,具有編碼能力但不熟悉業務的測試人員負責編寫測試腳本,測試腳本分析、解釋測試數據,調用已有測試函數,完成測試。

數據驅動的測試示意如下圖:

在實際項目中,測試庫和測試腳本一般都是由一個團隊完成,這個團隊熟悉編碼技術,熟悉最前沿的測試繼續,所搭建的測試框架能很好的把被測系統和測試數據有效的鏈接起來。

測試數據和被測系統是另外一個團隊完成,這個團隊熟悉被測系統的所有業務,能熟練編寫有效的測試數據,能有效使用驅動腳本實現自動化測試。

本文要解決的自動化測試需求是:如果操作前參數編號一致,表示是同一個參數,參數值一致表示處理正確。測試數據格式如下:

數據驅動自動化測試的優點:

按照這種方式組織的自動化比對,測試人員只需要維護好如上表格。測試時執行一次腳本,即使有幾千個參數,也能在幾秒內完成測試。再借用robot framework實現原始數據的自動提取和測試腳本的自動執行,幾乎可以完全脫離人工操作。

數據驅動自動化測試的缺點或限制:

數據與腳本分離方式的自動化測試的最大限制是,被測對象相對單一,執行操作必須完全一致,參數格式和個數有嚴格限制。例如表1中,如果對比的不是一個參數,而是參數編號和參數名都可能有變化,這種數據驅動方式就不太容易處理。

3 關鍵字驅動

相比數據驅動,關鍵字驅動的顯著改進是把執行操作作為關鍵字單獨列出來解析。對不同的關鍵字做不同的操作,這樣就能擺脫數據驅動的關鍵束縛:只能執行一種操作。這樣需要解析器不僅能解析數據還要能解析關鍵字。如圖:

如果發生需求變化,需要同時進行單參數和多參數比較兩種操作。多參數比較需要同時比較參數編號和參數名稱(文中為參數1和參數2),再確認是否是同一參數,關鍵字驅動測試數據格式如下:

關鍵字驅動自動化測試的優點:

測試人員根據實際需要設計表格,測試腳本讀取分析表格,執行測試用例。如果測試需求發生變化,可以追加定義關鍵字,追加測試庫的編寫,對原有測試腳本沒有任何沖擊,維護方便。

另外,由于測試數據完全獨立與測試腳本和被測代碼,所以測試數據完全可以在測試腳本代碼實現以前就完成編寫,并由此推動測試腳本的編寫。

關鍵字驅動自動化測試的缺點和限制:

數據表格相對復雜,增加了腳本解析的難度。不過,Python語言具有強大的文本處理能力,分析處理這種格式的表格還是比較容易的。

在實踐中,我們主要采用關鍵字驅動自動化測試方式來組織數據和編碼實現。

4 實現介紹

在實際測試中,本文用python來實現文本和表格的解析和比對,實現測試庫的編寫。用robotframework搭建測試框架,調用測試庫以實現文本的自動提取、分析、比對和測試結果的輸出。

輸出日志如下:

Test1 pass

Test2 pass

Test3 pass

……

Test300 pass

OUTPUT D:\測試比對結果\result.xml

5 總結

通過對比幾種自動化測試方法,我們最終使用關鍵字驅動同時結合數據驅動方式來組織我們的自動化測試。腳本基本能做到一次成型,后繼有新需求只是追加腳本,對原有腳本沒有任何影響。

測試腳本和測試數據完全分離,實際測試人員只需要具備最基本的文本編輯能力就能完成所有測試任務。新腳本能完全兼容舊的測試數據,大大降低維護成本。類似本文描述的需求,各種產品、各種系統都可以參考,實現方便。

主站蜘蛛池模板: 亚洲久悠悠色悠在线播放| 精品国产网| 亚洲免费福利视频| 毛片免费网址| 日韩国产黄色网站| 精品国产欧美精品v| 噜噜噜综合亚洲| 国产高潮流白浆视频| 国产精品亚洲综合久久小说| 亚洲人成网站色7799在线播放| 国产成人精品18| 亚洲精品无码高潮喷水A| 黄色片中文字幕| 黄色网站不卡无码| 成年人午夜免费视频| 欧美日韩午夜| 国产男女XX00免费观看| 久久综合一个色综合网| 91娇喘视频| 精品成人一区二区三区电影 | 99精品久久精品| 亚洲丝袜中文字幕| 18禁高潮出水呻吟娇喘蜜芽| 亚洲精品色AV无码看| 免费毛片全部不收费的| 亚洲综合香蕉| 亚洲自偷自拍另类小说| 狠狠躁天天躁夜夜躁婷婷| 亚洲第一极品精品无码| 国产微拍一区二区三区四区| 日本午夜在线视频| AV片亚洲国产男人的天堂| 欧美一级夜夜爽www| 日本影院一区| 中文字幕无线码一区| 国产无码精品在线| 亚洲成a人片7777| 国产精品亚洲日韩AⅤ在线观看| 亚洲毛片一级带毛片基地| 久久精品人人做人人| 久久精品国产精品国产一区| 亚洲二区视频| 免费aa毛片| 欧美视频在线观看第一页| 久久无码av一区二区三区| 久久久噜噜噜| 国产成人一二三| 97se亚洲| 亚洲综合香蕉| 欧美高清日韩| 91欧洲国产日韩在线人成| 欧美成在线视频| 亚洲精品国产成人7777| 日韩精品无码免费一区二区三区 | 日韩中文字幕亚洲无线码| 91视频日本| 婷婷中文在线| 色综合天天视频在线观看| 最新国产网站| 青青国产视频| 成人福利在线视频免费观看| 麻豆国产在线观看一区二区| jizz在线免费播放| 福利片91| 国产香蕉国产精品偷在线观看| 久久综合国产乱子免费| 国产成人在线小视频| 国产91蝌蚪窝| 国产精品任我爽爆在线播放6080| 伊人大杳蕉中文无码| 婷婷激情亚洲| 久久人妻系列无码一区| 亚洲国产清纯| 亚洲欧洲国产成人综合不卡| 欧美激情二区三区| 在线观看免费人成视频色快速| 亚洲男人的天堂网| 国产精品一区在线麻豆| 精品国产乱码久久久久久一区二区| 亚洲国产日韩视频观看| 精品自窥自偷在线看| 久久久久久久97|