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

基于Web系統的UFT自動化測試框架研究與應用

2019-12-12 10:00:59張偉
科技創新與應用 2019年33期

張偉

摘? 要:功能自動化測試框架是保證自動化測試高效、持久實施的基礎,在自動化測試初期,應該設計一套適合項目的自動化測試框架。文章以一款Flight軟件系統為被測軟件,以HP UFT為功能自動化測試工具,設計一種適合Web系統的功能自動化測試框架。

關鍵詞:自動化測試框架;自動化測試;UFT;功能測試

中圖分類號:TP311.53? ? ? 文獻標志碼:A? ? ? ? ?文章編號:2095-2945(2019)33-0159-02

Abstract: The functional automation test framework is the basis for ensuring efficient and long-lasting implementation of automated testing. In the early stages of automated testing, an automated testing framework suitable for the project should be designed. In this paper, a Flight software system is used as the tested software, and HP UFT is used as the function automation test tool to design a functional automation test framework suitable for the Web system.Keywords: automated test framework; automated testing; UFT; functional testing

引言

在功能自動化測試過程中,為了保證測試腳本的規范性、可讀性和可維護性,首先要設計健壯性強的自動化測試框架。所謂的自動化測試框架實質上就是一種規范的集合,在自動化測試團隊開發過程中,經常會遇到很多這樣那樣的問題,例如:測試腳本不統一,出現很多重復的腳本;對象庫中含有很多重復的對象,導致對象混亂;測試結果數據不清晰,查看的時間代價過大;測試腳本不規范,難以修改和復用,導致維護的成本很高。要解決這些問題,就必須要為其定義適合項目的規范集,即自動化測試框架。本文以一款Flight軟件系統為被測軟件,以HP UFT為功能自動化測試工具,設計一種適合Web系統的功能自動化測試框架。

1 HP UFT

HP UFT是HP公司研制開發的一款知名的企業級功能自動化測試工具,它的前身是QTP,QTP11.5版本發布之后改名為UFT。在UFT中,除了保存和升級了原有的QTP功能,還集成了服務測試工具Service Test(簡稱ST)。使用HP UFT進行功能自動化測試的過程一般包含以下7個步驟:(1)獲取和分析被測系統的功能測試需求,確定需要使用HP UFT測試的功能項,并確定被測業務流程;(2)配置HP UFT測試環境,在這個環節中涉及到對象庫、函數和函數庫資源,需要將這些資源與當前環境關聯;(3)使用HP UFT可以將業務操作錄制為VB腳本的形式,主要是利用HP UFT的對象識別、鼠標和鍵盤監控機制來錄制測試腳本;(4)依據業務需求,在錄制生成腳本的基礎上,修改腳本。可以在腳本中進行調整測試步驟,插入檢查點、使用參數化技術,添加分支、循環等語句,附加注釋等編輯操作;(5)使用Test Batch Runner、HP ALM等工具批量運行測試腳本;(6)使用HP UFT查看工具查看測試結果,檢查測試過程是否出現異常情況;(7)針對測試過程中的異常情況,

分析并總結出缺陷報告,然后通過缺陷管理工具提交測試缺陷,如HP ALM、Bugzilla等。

2 自動化測試框架

一個完備的測試框架應該考慮測試過程管理、對象的管理、函數庫的管理、數據驅動、關鍵字驅動、錯誤處理、測試報告管理等內容。下面以Flight軟件系統為測試案例介紹基于Web軟件系統的UFT功能自動化測試框架。

2.1 測試過程管理

自動化測試工程師在進行自動化測試時,首先要考慮的就是測試過程與測試腳本的統一管理。不管是手工測試還是自動化測試都需要依據規范的測試流程來開展測試工作,規范的測試流程是保證測試質量的首要因素。在本案例中,使用測試管理工具HP ALM對自動化測試的過程進行控制和管理。測試腳本是一種代碼,在測試進行過程中,需要對這些代碼進行統一的管理。在本案例中,自動化測試用例的測試腳本開發完成后,將上傳到HP ALM中進行統一管理。如果測試腳本有多個版本,那還要考慮腳本的版本控制,可以借助SVN等版本控制軟件對此進行管理。功能自動化測試工具HP UFT與HP ALM可以無縫對接,HP ALM不僅可以對HP UFT測試腳本進行管理,還可以對對象庫、函數庫、場景恢復等資源文件進行管理,使腳本更容易得到控制,在一定程度上可以減少后期維護的成本。

2.2 對象的管理

在功能自動化測試中,最難的問題之一就是對象的識別和管理,因為腳本中涉及流程上的變動相對來說比較少,變動最大的通常是對象層。在HP UFT中,對象識別主要包括以下兩種方法:

(1)從對象庫中查找并識別對象

對象庫是HP UFT的一個重要組件,對象庫中存放著與被測業務有關的各種對象,在腳本開發和回放過程中,可以從對象庫中查看并識別所需要的對象。這種方法實現了編碼與對象的分離,方便了對象的維護和管理,但是此對象庫文件只適合HP UFT,很難移植到其他功能自動化測試工具中。

(2)利用描述性編程查找并識別對象

這種方法比較靈活,可移植性好,無需使用對象庫組件,僅利用描述性編程語言來查找并識別當前頁面的對象,還可以根據需要識別并查找某一類的測試對象。

在本案例中,為了方便對象的維護和管理,優先使用對象庫的方式查找和識別對象,如果該方式無法滿足需要,再使用描述性編程查找并識別對象。如果使用對象庫,就需要構建和管理對象庫。為了防止對象庫混亂、名稱不統一,在構建對象庫時,需要測試人員規范對象庫中對象的命名,設置對象的層次結構、將對象庫中重復的對象刪除掉等。對象庫構建完成后,可將對象庫文件上傳到HP ALM系統的測試資源中,以便開發測試用例腳本時,測試人員可以將對象庫文件關聯到當前的用例項目中,實現對象庫文件的共享

2.3 函數庫的管理

在測試腳本的開發過程中,可以采用結構化編程的思想,將某些復用度較高的腳本單獨放在過程或者函數中,簡化腳本的開發工作量。例如:每個用例腳本中都包含著發送郵件的代碼,就可以將發送郵件的代碼單獨寫在一個函數中,當腳本用到發送郵件的代碼時,直接調用該函數即可。另外,如果腳本需要頻繁地調用外部函數庫中的函數,需要提前將函數庫文件關聯到當前的用例項目中。

在本案例中,將項目的相關函數放在外部的函數庫文件中,實現腳本與函數的分離,函數庫文件可以qfl格式、vbs格式或者是txt格式的。函數庫構建完成后,將其上傳到HP ALM系統的測試資源中,方便測試人員將函數庫文件關聯到當前的用例項目。此外,有些函數也可封裝在動態鏈接庫文件中(以DLL為后綴名),使用時通過Extern.Declare方法調用動態鏈接庫文件中的函數。

2.4 數據驅動

HP UFT支持數據驅動框架,其最大優點是實現了腳本與數據的分離,便于數據的修改和腳本的維護。測試腳本里的數據不再是hard-code,相反,數據是被存儲在HP UFT表中或者外部文件里。在本案例中,我們使用外部的Excel表格用來存儲數據,測試腳本需要首先連接到外部數據源文件,然后從數據源里解析這些數據。

2.5 關鍵字驅動

操作(Operation)和值(value),用面向對象形式可將其表現為 Item.Operation(Value)。有了這些關鍵字,那么測試用例的步驟就可以借助這些關鍵字來表示。例如:某用例步驟“在員工登錄頁面中的用戶名文本框里輸入tester1”的具體實現腳本可表示為:Browser(“Flight系統”).Page(“員工登錄”).WebEdit(“name”).Set tester1,其中,Browser(“Flight系統”).Page(“員工登錄”).WebEdit(“name”)是指被操作的對象,set是操作的方法, tester1是指具體的用戶名值。

所謂的關鍵字驅動測試就是使用關鍵字驅動技術來開發測試腳本,關鍵字驅動測試的具體步驟如下:

(1)建立對象庫,對測試用例中所用到對象(控件)屬性及方法進行封裝。

(2)編制腳本,使用封裝好了的對象及其對應的方法,為所進行的操作賦值。

在HP UFT腳本開發過程中,可以通過錄制方式生成腳本,也可以通過手工編寫腳本。在本案例中,將兩種方式結合起來,先用錄制方式快速生成基本業務腳本,然后依據用例的要求通過手工的方式去修改和強化腳本。

2.6 異常監控和處理

錯誤處理在自動化測試過程中一直是一件非常繁瑣的事情,我們經常會遇到因為腳本的一個小錯誤而“卡住”所有其他測試用例的執行,以及在復雜的框架中無法對腳本執行過程中出現的錯誤進行定位等情況。

錯誤處理的一般原則為:對于可以預見確切發生時間的錯誤使用“if err then”形式來進行錯誤處理操作,如登錄之后密碼不正確的錯誤操作等;對于無法預見確切發生時間的錯誤,通常先使用HP UFT的場景恢復技術對錯誤進行處理,再繼續完成后續的操作。

2.7 測試報告管理

測試執行過程,HP UFT會記錄下每個Action的執行情況,可以使用Reporter等對象將執行過程中的某些關鍵信息輸出到測試報告中,以便測試人員可以判斷測試用例腳本執行通過或是失敗。此外,為了便于查看批量運行腳本的結果數據,可將所有腳本執行過程中的關鍵數據統一輸出到一個文件中,使測試人員可以更加直觀和快速的了解測試執行情況。在本案例中,利用Excel.Application對象和Reporter對象將所有測試腳本的關鍵信息輸出到一個Excel文件中。

3 結束語

自動化測試框架是保證功能自動化測試有效、持續使用的基礎,在自動化測試初期,測試人員就應考慮建立一套自動化測試規范,即測試框架。另外,自動化測試框架都有其適用范圍,本文所建立的UFT自動化測試框架主要適用于Web軟件系統,不適用于CS架構軟件系統。

參考文獻:

[1]接卉,蘭雨晴,駱沛,等.一種關鍵字驅動的自動化測試框架[J].計算機應用研究,2009,26(3):927-929.

[2]自動化測試在大型軟件系統的應用與研究[D].浙江大學,2010.

[3]李吟,方建勇,江夢,等.面向需求覆蓋的Web服務自動化測試框架[J].計算機科學與探索,2017,11(11):1747-1763.

[4]黃建軍,李宥謀,劉婧,等.基于Python語言的自動化測試系統的設計與實現[J].現代電子技術,2017,40(4):39-43.

[5]李志林.嵌入式軟件自動化測試系統研究[J].現代制造技術與裝備,2019(06):97-98.

[6]張瑛.回歸測試中機器挑選用例方法研究[J].科技與企業,2015(5):201-202.

[7]聶長海.關于軟件測試的幾點思考[J].計算機科學,2011,38(2):1-3.

主站蜘蛛池模板: 久久久久亚洲AV成人网站软件| 欧美日韩中文国产| 国产午夜精品一区二区三| 亚洲天堂网在线观看视频| 九九精品在线观看| 丁香六月激情婷婷| 亚洲黄色网站视频| 亚洲欧美在线综合一区二区三区| 亚洲无线观看| 国产精品对白刺激| 日本国产精品一区久久久| 国产门事件在线| 青草免费在线观看| av一区二区三区在线观看| 无码'专区第一页| 四虎影视无码永久免费观看| 丁香婷婷激情综合激情| 亚洲成人精品久久| 91午夜福利在线观看精品| 日本在线国产| 国产swag在线观看| 国产精品男人的天堂| 亚洲AⅤ永久无码精品毛片| 日本午夜影院| 五月激情婷婷综合| 日本成人一区| 久久天天躁狠狠躁夜夜2020一| 国产成人综合亚洲网址| 国产99久久亚洲综合精品西瓜tv| 97精品国产高清久久久久蜜芽 | 尤物成AV人片在线观看| 国产美女91视频| 亚洲日韩国产精品无码专区| 欧美成人影院亚洲综合图| 国产成人久视频免费| 福利视频久久| 2020亚洲精品无码| 日韩a在线观看免费观看| 亚洲欧洲日产国码无码av喷潮| JIZZ亚洲国产| 特级aaaaaaaaa毛片免费视频| 国产女人18水真多毛片18精品| 国产亚洲欧美在线人成aaaa| 国产福利免费在线观看| 亚洲—日韩aV在线| 国产在线精品99一区不卡| 婷婷色婷婷| 婷婷成人综合| 日本爱爱精品一区二区| 青青草一区| 亚洲日韩AV无码一区二区三区人| www.亚洲一区| 免费精品一区二区h| 夜精品a一区二区三区| 久久伊人色| 性做久久久久久久免费看| 亚洲午夜福利在线| 国产区免费精品视频| 日本午夜三级| 国产本道久久一区二区三区| 国产区精品高清在线观看| 久久激情影院| 色综合天天操| 丁香六月激情综合| 99久久亚洲综合精品TS| 色丁丁毛片在线观看| 日韩少妇激情一区二区| 成年网址网站在线观看| 久久国产乱子| 欧美.成人.综合在线| h网址在线观看| 真人高潮娇喘嗯啊在线观看| 亚洲欧美成人综合| 凹凸精品免费精品视频| 国产成a人片在线播放| 精品一区二区三区自慰喷水| 无码高潮喷水在线观看| 香蕉蕉亚亚洲aav综合| 精品无码视频在线观看| av一区二区人妻无码| 国产丝袜一区二区三区视频免下载| 国产女人在线观看|