欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種關鍵字驅動的導航方法

文檔序號:6531691閱讀:208來源:國知局
專利名稱:一種關鍵字驅動的導航方法
技術領域
本發(fā)明涉及自動化測試技術,更具體地說,涉及一種關鍵字驅動的導航方法。
背景技術
在對電信設備或軟件進行測試的過程中,通常是使用Key-Word Driven(關鍵字驅動)技術,它是基于Rational公司的Robot工具平臺而實現(xiàn)的,通常應用于GUI(圖形用戶界面)的自動化測試中。
在關鍵字驅動技術中,測試人員會使用類似Excel工作表的表格,以輸入關鍵字(Key-Word)的方式來建立測試用例。這個方法的整個過程(包含功能)都是由關鍵字驅動的,關鍵字控制了整個測試過程。
表一所示是一個示例性的測試用例。
表一

其中,第一列是關鍵字,用于說明要執(zhí)行的動作;第二到第四列,是執(zhí)行第一列的動作所必需的參數;第五列用于表示該步驟是否通過。
如圖1所示,關鍵字驅動技術的運作機制如下(1)測試人員以Excel建立如表一所示的測試用例文件,例如可命名為KeyWords_Web.xls;測試用例文件由關鍵字(如Enter、Action、Verify等)及其參數組成。
(2)測試用例運行時,驅動腳本(Drive TSL script)會運行初始化腳本(LogonTSL script),為整個測試作初始化工作,并載入控制文件(Run.txt),以獲取當前要運行的測試用例(*.xls,例如KeyWords_Web.xls)。
(3)驅動腳本(Drive TSL script)在初始化工作完成后,啟動控制腳本(Controller TSL script),由控制腳本來負責解析整個測試用例文件的關鍵字,例如Enter、Action、Verify等,并根據這些關鍵字來調用與之對應的實現(xiàn)腳本(User Defined TSL script)。
(4)Utility腳本(即實現(xiàn)TSL腳本)實際執(zhí)行每個測試動作,并且使用其它列作為參數,執(zhí)行完后將結果回傳給控制腳本。當控制腳本執(zhí)行到最后一行,整個測試用例就結束執(zhí)行。
(5)當控制文件(Run.txt)中的所有用例文件(*.xls)都已運行完畢,則本次測試過程結束。
由上述可知,在對電信設備或軟件進行測試的過程中,關鍵字驅動技術有以下缺點(1)主要應用于GUI自動化測試,并基于Rational公司的Robot工具平臺而實現(xiàn),(a)它的跨平臺(特指操作系統(tǒng))移植性比較弱,(b)跨工具平臺移植性也比較弱,(c)而且不適合應用于通信設備類產品的自動化測試。
(2)缺少中心數據庫(CDB),AW(關鍵字)本身就是NKey(導航關鍵字),關鍵字的導航直接在驅動模塊中實現(xiàn),通常是通過編程語言提供的case語句或if語句來實現(xiàn)的,如圖2所示,因此,如果新增一個關鍵字,則必須修改驅動模塊;其結果將導致(a)自動化測試過程中開發(fā)成本增加,(b)關鍵字將會有大量的冗余,(c)需同時維護多個版本的驅動模塊。
(3)無法實現(xiàn)不同產品/版本間測試用例的移植。
(4)關鍵字的實現(xiàn)方式只能通過腳本來實現(xiàn),無法通過其它編程語言如C、Pascal等來實現(xiàn)。

發(fā)明內容
針對現(xiàn)有技術的上述缺陷,本發(fā)明要解決的技術問題在于如何改進關鍵字的導航技術,使得新增關鍵字時不必修改導航腳本。
為解決上述技術問題,本發(fā)明的方案是提供一種關鍵字驅動的導航方法,采用靜態(tài)腳本和動態(tài)腳本組成導航腳本,包括以下步驟(S1)由所述靜態(tài)腳本完成中心數據庫的加載,并創(chuàng)建相應的動態(tài)腳本;(S2)所述動態(tài)腳本根據所述關鍵字和與之對應的導航關鍵字,獲取對應的關鍵字實現(xiàn)函數。
為了實現(xiàn)測試的目的,本發(fā)明中還包括(S3)所述動態(tài)腳本將測試邏輯中的關鍵字的參數傳給所述關鍵字實現(xiàn)函數;(S4)執(zhí)行所述關鍵字實現(xiàn)函數,以完成相應的測試功能。
本發(fā)明中,在所述中心數據庫內存儲有關于關鍵字、導航關鍵字以及關鍵字實現(xiàn)函數之間相互關系的信息;在所述步驟(S1)中,所述靜態(tài)腳本完成中心數據庫的加載后,根據所需的關鍵字來創(chuàng)建相應的動態(tài)腳本;在所述步驟(S2)中,所述動態(tài)腳本根據所述關鍵字和與之對應的導航關鍵字,通過查找所述中心數據庫來獲取對應的關鍵字實現(xiàn)函數。
本發(fā)明中,所述導航腳本可通過腳本語言或編譯語言實現(xiàn)。所述靜態(tài)腳本為初始化腳本;在所述步驟(S1)中,所述靜態(tài)腳本可通過腳本語言動態(tài)創(chuàng)建命令的特性來創(chuàng)建所述動態(tài)腳本。所述腳本語言可為工具命令語言(TCL)。
采用本發(fā)明的方案之后,通過中心數據庫,在維護關鍵字及其與導航關鍵字、關鍵字實現(xiàn)函數之間的對應關系時,只需修改中心數據庫即可,而不必再修改導航腳本,從而提高了關鍵字數據驅動自動化測試的開發(fā)效率,并且降低了關鍵字驅動自動化測試的后續(xù)維護成本,同時可避免關鍵字的冗余,避免維護多個版本的導航腳本;另外,具有相同功能的測試工具或測試儀器的配置和控制也可定義一套相同的關鍵字來實現(xiàn)。
而且,由采取了上述技術方案,通過導航關鍵字就可將關鍵字導航到不同測試工具或測試儀器的關鍵字實現(xiàn)函數,也可將關鍵字導航到不同產品或同一產品的不同版本的關鍵字實現(xiàn)函數,從而為測試腳本在不同產品或同一產品不版本間的移植奠定了基礎。
另外,由于在本發(fā)明中中的導航腳本是通過腳本語言(如TCL腳本語言、Python語言)來實現(xiàn)的,而腳本語言具備跨平臺(特指操作系統(tǒng))及跨工具平臺的特性,因此,本發(fā)明的方案能提高跨平臺移植性和跨工具平臺移植性,從而更適合應用于通信設備類產品的自動化測試。


下面將結合附圖及實施例對本發(fā)明作進一步說明,附圖中圖1是現(xiàn)有技術中關鍵字驅動技術的的動作機制示意圖;圖2是現(xiàn)有技術中新增關鍵字時的流程示意圖;圖3是本發(fā)明中的導航腳本的結構示意圖;圖4是本發(fā)明中導航腳本的初始化流程圖;圖5是本發(fā)明中測試邏輯的執(zhí)行過程示意圖。
具體實施例方式
本發(fā)明的實現(xiàn),是基于現(xiàn)有技術的各項發(fā)展,例如,腳本語言(如TCL、PYTHON等)的特性,如解釋執(zhí)行、可嵌入、可擴展等特性,為自動化測試技術奠定了基礎;同時,各種產品(如電信設備或軟件)不僅提供圖形界面,同時也提供命令行接口或人機接口,也為產品的自動化測試技術奠定了基礎;此外,申請人經過多年的自動化測試實踐,總結了一整套自動化測試腳本設計模式,包括線性測試腳本設計模式、結構化測試腳本設計模式、共享測試腳本設計模式、數據驅動測試腳本設計模式、關鍵字驅動測試腳本設計模式等。
為便于對本發(fā)明的理解,下面對本文中使用的一些術語作一個簡單的介紹,具體如表二所示
表二

由前述內容可知,本發(fā)明的目的是要改進關鍵字的導航方案,使得新增關鍵字時不必修改導航腳本。
如圖3所示,本發(fā)明中,導航腳本由兩部分組成(1)一部分為靜態(tài)腳本,即初始化腳本,主要用于完成中心數據庫的加載,并通過腳本語言(如TCL)動態(tài)創(chuàng)建命令的特性,來創(chuàng)建導航腳本的動態(tài)腳本;(2)另一部分為動態(tài)腳本,即關鍵字函數,它根據導航關鍵字(NKey)來完成關鍵字的導航,執(zhí)行關鍵字實現(xiàn)函數,并將結果返回給測試邏輯。具體實施時,導航腳本可以通過腳本語言(如Python)或編譯語言(如C)來實現(xiàn)。
如圖4所示,導航腳本在初始化階段加載中心數據庫,并且根據中心數據庫中定義的關鍵字以及關鍵字與導航關鍵字、關鍵字實現(xiàn)函數之間的對應關系,利用腳本語言(如TCL)的可以動態(tài)生成命令的特性,生成關鍵字函數,即動態(tài)腳本;然后以關鍵字函數作為導航腳本的一部分,完成關鍵字到關鍵字實現(xiàn)函數的導航的功能。
如圖5所示,測試邏輯在執(zhí)行過程中(1)關鍵字將觸發(fā)關鍵字函數,轉而執(zhí)行關鍵字函數,即執(zhí)行導航腳本中的動態(tài)腳本;(2)關鍵字函數根據關鍵字及與之對應的導航關鍵字,查找中心數據庫,以獲取與關鍵字對應的關鍵字實現(xiàn)函數;本文中的加載是指把中心數據庫所有內容加載到計算機內存中或連接到數據庫;查找是指在中心數據庫中查找某條記錄;(3)導航腳本中的動態(tài)腳本將測試邏輯中的關鍵字的參數也同時傳給關鍵字實現(xiàn)函數,然后執(zhí)行關鍵字實現(xiàn)函數,以完成相應的測試功能;(4)將結果返回給測試邏輯,并確定測試邏輯是否繼續(xù)執(zhí)行下一個關鍵字,如果為否則結束整個流程。
可見,本發(fā)明中,由于新增加的關鍵字與導航關鍵字、關鍵字實現(xiàn)函數的對應關系,只需要修改中心數據庫,不必修改導航腳本,所以提高了開發(fā)效率,降低了導航腳本的維護成本。其中的導航腳本可以通過腳本語言(如Python)或編譯語言(如C)來實現(xiàn)。
權利要求
1.一種關鍵字驅動的導航方法,其特征在于,采用靜態(tài)腳本和動態(tài)腳本組成導航腳本,包括以下步驟(S1)由所述靜態(tài)腳本完成中心數據庫的加載,并創(chuàng)建相應的動態(tài)腳本;(S2)所述動態(tài)腳本根據所述關鍵字和與之對應的導航關鍵字,獲取對應的關鍵字實現(xiàn)函數。
2.根據權利要求1所述的方法,其特征在于,還包括以下步驟(S3)所述動態(tài)腳本將測試邏輯中的關鍵字的參數傳給所述關鍵字實現(xiàn)函數;(S4)執(zhí)行所述關鍵字實現(xiàn)函數,以完成相應的測試功能。
3.根據權利要求2所述的方法,其特征在于,在所述中心數據庫內存儲有關于關鍵字、導航關鍵字以及關鍵字實現(xiàn)函數之間相互關系的信息。
4.根據權利要求3所述的方法,其特征在于,在所述步驟(S1)中,所述靜態(tài)腳本完成中心數據庫的加載后,根據所需的關鍵字來創(chuàng)建相應的動態(tài)腳本。
5.根據權利要求4所述的方法,其特征在于,在所述步驟(S2)中,所述動態(tài)腳本根據所述關鍵字和與之對應的導航關鍵字,通過查找所述中心數據庫來獲取對應的關鍵字實現(xiàn)函數。
6.根據權利要求1-5中任一項所述的方法,其特征在于,所述導航腳本是通過腳本語言或編譯語言實現(xiàn)的。
7.根據權利要求6所述的方法,其特征在于,所述靜態(tài)腳本為初始化腳本;在所述步驟(S1)中,所述靜態(tài)腳本通過腳本語言動態(tài)創(chuàng)建命令的特性來創(chuàng)建所述動態(tài)腳本。
8.根據權利要求7所述的方法,其特征在于,所述腳本語言為工具命令語言(TCL)。
全文摘要
本發(fā)明涉及自動化測試技術,為達到新增AW(關鍵字)時不必修改導航腳本的目的,本發(fā)明提供一種關鍵字驅動的導航方法,其中采用由靜態(tài)腳本和動態(tài)腳本組成的導航腳本,并在中心數據庫內存儲關鍵字、導航關鍵字、及關鍵字實現(xiàn)函數之間的相互關系,然后,可由靜態(tài)腳本完成中心數據庫的加載,并根據所需的關鍵字來創(chuàng)建相應的動態(tài)腳本;再由所述動態(tài)腳本根據所述關鍵字和導航關鍵字,通過查找所述中心數據庫來獲取對應的關鍵字實現(xiàn)函數;同時,所述動態(tài)腳本將測試邏輯中的關鍵字的參數傳給所述關鍵字實現(xiàn)函數;通過執(zhí)行所述關鍵字實現(xiàn)函數,即可完成相應的測試功能,并將結果返回給測試邏輯。本發(fā)明中的方法可提高開發(fā)效率,降低導航腳本的維護成本。
文檔編號G06F11/36GK1851664SQ20051003718
公開日2006年10月25日 申請日期2005年9月8日 優(yōu)先權日2005年9月8日
發(fā)明者林培興 申請人:華為技術有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
平武县| 太仓市| 韶山市| 峡江县| 宝鸡市| 牡丹江市| 盐亭县| 九台市| 雷州市| 江都市| 福泉市| 灌南县| 新民市| 舞钢市| 织金县| 阆中市| 鲜城| 瑞丽市| 建德市| 连城县| 通州区| 楚雄市| 昌邑市| 莎车县| 水富县| 开远市| 治多县| 西和县| 广河县| 禹城市| 阳新县| 边坝县| 乐安县| 巴彦淖尔市| 盘锦市| 永川市| 德格县| 濮阳市| 通许县| 大冶市| 繁峙县|