自動化測試的實(shí)踐應(yīng)用QTP測試框架課件_第1頁
自動化測試的實(shí)踐應(yīng)用QTP測試框架課件_第2頁
自動化測試的實(shí)踐應(yīng)用QTP測試框架課件_第3頁
自動化測試的實(shí)踐應(yīng)用QTP測試框架課件_第4頁
自動化測試的實(shí)踐應(yīng)用QTP測試框架課件_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

自動化測試的實(shí)踐——應(yīng)用QTP測試框架10/31/2022iSoftStoneInformationServiceCorporation自動化測試的實(shí)踐——應(yīng)用QTP測試框架10/23/2022i目錄自動化測試實(shí)施規(guī)劃自動化測試源于手工測試基于功能分解的自動化測試框架使用TD+QTP管理測試腳本測試自動化實(shí)現(xiàn)的兩個難點(diǎn)功能分解Web對象的識別靜態(tài)Web對象的識別動態(tài)Web對象的識別6.實(shí)例操作2?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.目錄自動化測試實(shí)施規(guī)劃2?2005iSoftStoneI自動化測試實(shí)施規(guī)劃階段一:完成對結(jié)算和信貸主要業(yè)務(wù)的流程覆蓋階段二:完成對業(yè)務(wù)的校驗和約束階段三:應(yīng)用到更多的業(yè)務(wù)中去,規(guī)模擴(kuò)大開發(fā)自動化測試框架,降低對測試工具的依賴使用動作詞的自動化測試第一層次第二層次第三層次層次階段測試自動化程度3?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.自動化測試實(shí)施規(guī)劃階段一:完成對結(jié)算和信貸主要業(yè)務(wù)的流程覆蓋自動化測試源于手工測試手工測試自動化測試測試設(shè)計測試執(zhí)行測試用例測試設(shè)計測試實(shí)現(xiàn)測試執(zhí)行測試用例1輸入數(shù)據(jù)2操作3預(yù)期結(jié)果1業(yè)務(wù)數(shù)據(jù)2業(yè)務(wù)功能實(shí)現(xiàn)業(yè)務(wù)功能所占用的時間所占用的時間4?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.自動化測試源于手工測試手工測試自動化測試測試設(shè)計測試執(zhí)行測試基于功能分解的自動化測試框架5?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.基于功能分解的自動化測試框架5?2005iSoftSton基于功能分解的自動化測試框架6?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.基于功能分解的自動化測試框架6?2005iSoftSton基于功能分解的自動化測試框架優(yōu)點(diǎn)較為模塊化(modular)的設(shè)計,避免重復(fù)的腳本,減少建立或維護(hù)腳本的成本。

在應(yīng)用軟件開發(fā)的同時,就可以同步進(jìn)行腳本建立的動作,而且當(dāng)應(yīng)用軟件功能變動時,只需要修改業(yè)務(wù)功能腳本。由于應(yīng)用軟件的功能已經(jīng)被分解成獨(dú)立的業(yè)務(wù)功能腳本,測試人員可以隨意組合業(yè)務(wù)功能腳本成為更復(fù)雜多樣的測試個案。測試輸入數(shù)據(jù)與驗證數(shù)據(jù)與腳本分開,儲存在另外的檔案,如純文字文件或Excel文件,測試人員可以更容易修改與維護(hù)。透過判斷Action回傳值是TRUE或FALSE,可以作錯誤處理,讓腳本更有彈性。缺點(diǎn)在編寫業(yè)務(wù)功能腳本時,需要「精通」測試工具腳本語言的工程師。

每個Action都會有自己的輸入輸出參數(shù),需要用文檔統(tǒng)一維護(hù),控制變更。測試人員除了要維護(hù)測試計劃之外,還要另外維護(hù)數(shù)據(jù)文件。對測試工具以及腳本語言來說,使用數(shù)據(jù)文件可能也要注意數(shù)據(jù)文件的格式。

7?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.基于功能分解的自動化測試框架優(yōu)點(diǎn)7?2005iSoftSt使用TD+QTP管理測試腳本①②③8?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.使用TD+QTP管理測試腳本①②③8?2005iSoftS使用TD+QTP管理測試腳本TD管理QTP腳本QTP開發(fā)機(jī)連接TD服務(wù)器開發(fā)QTP腳本保存腳本到TestLabTD調(diào)度QTP腳本添加QTP腳本到TestPlan中QTP執(zhí)行機(jī)連接TD服務(wù)器在執(zhí)行機(jī)中運(yùn)行TestPlan9?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.使用TD+QTP管理測試腳本TD管理QTP腳本9?2005測試自動化實(shí)現(xiàn)的兩個難點(diǎn)測試自動化實(shí)現(xiàn)的兩個難點(diǎn)設(shè)計——功能分解實(shí)現(xiàn)——Web對象的識別10?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.測試自動化實(shí)現(xiàn)的兩個難點(diǎn)測試自動化實(shí)現(xiàn)的兩個難點(diǎn)10?200測試自動化實(shí)現(xiàn)的兩個難點(diǎn)—功能分解業(yè)務(wù)功能分解的原則和方法:清晰畫出業(yè)務(wù)流程圖根據(jù)業(yè)務(wù)流程分解業(yè)務(wù)功能,可以被復(fù)用的功能也要被分解出來。按照路徑覆蓋的思想,組織測試用例參見附件的《業(yè)務(wù)流程分析》11?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.測試自動化實(shí)現(xiàn)的兩個難點(diǎn)—功能分解業(yè)務(wù)功能分解的原則和方法:測試自動化實(shí)現(xiàn)的兩個難點(diǎn)—Web對象的識別靜態(tài)Web對象的識別序號Web對象推薦識別屬性方法1BrowsercreationTime

2Pageindex

3Framename

4WebTablename

5WebEditnameSet6WebButtontextClick7WebListnameSelect8LinktextClick9Imagename

10WebCheckBoxname

11WebRadioGroupname

12WebElementinnertext/htmltag

13Dialogtext

14WinButtontext

12?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.測試自動化實(shí)現(xiàn)的兩個難點(diǎn)—Web對象的識別靜態(tài)Web對象的識靜態(tài)Web對象的識別示例:Browser(“creationTime:=0”).Page(“index:=0”).WebEdit(“name:=amount”).Set“1000” 在第一個被創(chuàng)建的IE窗口,查找name屬性為amount的輸入框,輸入數(shù)據(jù)1000Browser(“creationTime:=1”).Page(“index:=0”).WebButton(“text:=保存”).Click在第二個被創(chuàng)建的IE窗口,查找按鈕,該按鈕上顯示的文字是“保存”,點(diǎn)擊該按鈕13?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.靜態(tài)Web對象的識別示例:13?2005iSoftSton靜態(tài)Web對象的識別—creationTime,Index,LocationQuickTest可以使用三種類型的順序標(biāo)識符來標(biāo)識對象:索引(index):指示該對象在應(yīng)用程序代碼中相對于其他描述都相同的其他對象的顯示順序。QTP在錄制和執(zhí)行中,為測試對象屬性分配一個值,以便唯一標(biāo)識該對象。該值基于對象在源代碼中的顯示順序。第一個出現(xiàn)的是0。注意,index屬性值是特定于對象的。因此,如果使用Index:=3描述WebEdit測試對象,QuickTest將在頁中搜索第四個WebEdit對象。

位置(location):指示該對象在父窗口、框架或?qū)υ捒蛑邢鄬τ谄渌枋龆枷嗤钠渌麑ο蟮娘@示順序。

QuickTest可以為對象的location測試對象屬性分配一個值,以便唯一標(biāo)識該對象。該值基于對象在窗口、框架或?qū)υ捒蛑邢鄬τ诰哂邢嗤瑢傩缘钠渌麑ο蟮娘@示順序。第一個出現(xiàn)的對象是0。各列值的分配從上到下、從左到右。creationTime(僅限于瀏覽器對象):指示該瀏覽器打開的順序,相對于其他描述都相同的其他打開的瀏覽器。

如果QuickTest不能僅基于測試對象描述唯一標(biāo)識瀏覽器對象,它將為“CreationTime”測試對象屬性分配一個值。該值指示該瀏覽器打開的順序,相對于其他描述都相同的其他打開的瀏覽器。在運(yùn)行會話期間,如果QuickTest不能只是基于其測試對象描述來標(biāo)識某個瀏覽器對象,那么,它將檢查瀏覽器的打開順序,然后使用“CreationTime”屬性標(biāo)識正確的對象。

14?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.靜態(tài)Web對象的識別—creationTime,Index,動態(tài)Web對象的識別—ObjectSpy一個好助手——ObjectSpy通過ObjectSpy可以查看到所需要識別的Web對象的所有屬性值,挑選其中可以唯一識別該對象的一個屬性或多個屬性,對該Web對象進(jìn)行描述。15?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.動態(tài)Web對象的識別—ObjectSpy一個好助手——Ob動態(tài)Web對象的識別—GetROPropertyGetToProperty:Returnsthevalueofthespecifiedpropertyfromthetestobjectdescription.

GetTOProperties:Returnsthecollectionofpropertiesandvaluesusedtoidentifytheobject.

GetROProperty:Returnsthecurrentvalueofthetestobjectpropertyfromtheobjectintheapplication.

舉個例子:

假設(shè)在庫中有一個對象"窗口A",用于識別該對象的屬性有2個,

一個屬性是"text",在庫中記錄的值是"QQQQ".

另一個屬性是"name",記錄的值是"MM"

在實(shí)際運(yùn)行腳本時屬性"text"的值是"PPPP"而不是"QQQQ"

那么:

Window("窗口A").GetToProperty("text")返回的是:"QQQQ"

Window("窗口A").GetRoProperty("text")返回的是:"PPPP"

Window("窗口A").GetToProperties("text")返回的是用于識別"窗口A"的兩個屬性和值的集合16?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.動態(tài)Web對象的識別—GetROPropertyGetToP動態(tài)Web對象的識別—對象、數(shù)組、String使用對象描述的方式來描述Web對象SetoDesc=Description.Create()oDesc(“micClass”)=“Link”oDesc(“text”)=“01-0001”Browser(…).Page(…).oDesc.Click與這種方法搭配使用的是ChildObjects方法Array與String的轉(zhuǎn)換str=join(myArray)myArray=split(str,”,”)String的幾個比較有用的方法Instr(SearchString,SearchChar)

17?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.動態(tài)Web對象的識別—對象、數(shù)組、String使用對象描述的實(shí)例操作銀行付款業(yè)務(wù)的實(shí)現(xiàn)18?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.實(shí)例操作銀行付款業(yè)務(wù)的實(shí)現(xiàn)18?2005iSoftSton自動化測試的實(shí)踐——應(yīng)用QTP測試框架10/31/2022iSoftStoneInformationServiceCorporation自動化測試的實(shí)踐——應(yīng)用QTP測試框架10/23/2022i目錄自動化測試實(shí)施規(guī)劃自動化測試源于手工測試基于功能分解的自動化測試框架使用TD+QTP管理測試腳本測試自動化實(shí)現(xiàn)的兩個難點(diǎn)功能分解Web對象的識別靜態(tài)Web對象的識別動態(tài)Web對象的識別6.實(shí)例操作20?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.目錄自動化測試實(shí)施規(guī)劃2?2005iSoftStoneI自動化測試實(shí)施規(guī)劃階段一:完成對結(jié)算和信貸主要業(yè)務(wù)的流程覆蓋階段二:完成對業(yè)務(wù)的校驗和約束階段三:應(yīng)用到更多的業(yè)務(wù)中去,規(guī)模擴(kuò)大開發(fā)自動化測試框架,降低對測試工具的依賴使用動作詞的自動化測試第一層次第二層次第三層次層次階段測試自動化程度21?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.自動化測試實(shí)施規(guī)劃階段一:完成對結(jié)算和信貸主要業(yè)務(wù)的流程覆蓋自動化測試源于手工測試手工測試自動化測試測試設(shè)計測試執(zhí)行測試用例測試設(shè)計測試實(shí)現(xiàn)測試執(zhí)行測試用例1輸入數(shù)據(jù)2操作3預(yù)期結(jié)果1業(yè)務(wù)數(shù)據(jù)2業(yè)務(wù)功能實(shí)現(xiàn)業(yè)務(wù)功能所占用的時間所占用的時間22?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.自動化測試源于手工測試手工測試自動化測試測試設(shè)計測試執(zhí)行測試基于功能分解的自動化測試框架23?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.基于功能分解的自動化測試框架5?2005iSoftSton基于功能分解的自動化測試框架24?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.基于功能分解的自動化測試框架6?2005iSoftSton基于功能分解的自動化測試框架優(yōu)點(diǎn)較為模塊化(modular)的設(shè)計,避免重復(fù)的腳本,減少建立或維護(hù)腳本的成本。

在應(yīng)用軟件開發(fā)的同時,就可以同步進(jìn)行腳本建立的動作,而且當(dāng)應(yīng)用軟件功能變動時,只需要修改業(yè)務(wù)功能腳本。由于應(yīng)用軟件的功能已經(jīng)被分解成獨(dú)立的業(yè)務(wù)功能腳本,測試人員可以隨意組合業(yè)務(wù)功能腳本成為更復(fù)雜多樣的測試個案。測試輸入數(shù)據(jù)與驗證數(shù)據(jù)與腳本分開,儲存在另外的檔案,如純文字文件或Excel文件,測試人員可以更容易修改與維護(hù)。透過判斷Action回傳值是TRUE或FALSE,可以作錯誤處理,讓腳本更有彈性。缺點(diǎn)在編寫業(yè)務(wù)功能腳本時,需要「精通」測試工具腳本語言的工程師。

每個Action都會有自己的輸入輸出參數(shù),需要用文檔統(tǒng)一維護(hù),控制變更。測試人員除了要維護(hù)測試計劃之外,還要另外維護(hù)數(shù)據(jù)文件。對測試工具以及腳本語言來說,使用數(shù)據(jù)文件可能也要注意數(shù)據(jù)文件的格式。

25?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.基于功能分解的自動化測試框架優(yōu)點(diǎn)7?2005iSoftSt使用TD+QTP管理測試腳本①②③26?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.使用TD+QTP管理測試腳本①②③8?2005iSoftS使用TD+QTP管理測試腳本TD管理QTP腳本QTP開發(fā)機(jī)連接TD服務(wù)器開發(fā)QTP腳本保存腳本到TestLabTD調(diào)度QTP腳本添加QTP腳本到TestPlan中QTP執(zhí)行機(jī)連接TD服務(wù)器在執(zhí)行機(jī)中運(yùn)行TestPlan27?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.使用TD+QTP管理測試腳本TD管理QTP腳本9?2005測試自動化實(shí)現(xiàn)的兩個難點(diǎn)測試自動化實(shí)現(xiàn)的兩個難點(diǎn)設(shè)計——功能分解實(shí)現(xiàn)——Web對象的識別28?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.測試自動化實(shí)現(xiàn)的兩個難點(diǎn)測試自動化實(shí)現(xiàn)的兩個難點(diǎn)10?200測試自動化實(shí)現(xiàn)的兩個難點(diǎn)—功能分解業(yè)務(wù)功能分解的原則和方法:清晰畫出業(yè)務(wù)流程圖根據(jù)業(yè)務(wù)流程分解業(yè)務(wù)功能,可以被復(fù)用的功能也要被分解出來。按照路徑覆蓋的思想,組織測試用例參見附件的《業(yè)務(wù)流程分析》29?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.測試自動化實(shí)現(xiàn)的兩個難點(diǎn)—功能分解業(yè)務(wù)功能分解的原則和方法:測試自動化實(shí)現(xiàn)的兩個難點(diǎn)—Web對象的識別靜態(tài)Web對象的識別序號Web對象推薦識別屬性方法1BrowsercreationTime

2Pageindex

3Framename

4WebTablename

5WebEditnameSet6WebButtontextClick7WebListnameSelect8LinktextClick9Imagename

10WebCheckBoxname

11WebRadioGroupname

12WebElementinnertext/htmltag

13Dialogtext

14WinButtontext

30?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.測試自動化實(shí)現(xiàn)的兩個難點(diǎn)—Web對象的識別靜態(tài)Web對象的識靜態(tài)Web對象的識別示例:Browser(“creationTime:=0”).Page(“index:=0”).WebEdit(“name:=amount”).Set“1000” 在第一個被創(chuàng)建的IE窗口,查找name屬性為amount的輸入框,輸入數(shù)據(jù)1000Browser(“creationTime:=1”).Page(“index:=0”).WebButton(“text:=保存”).Click在第二個被創(chuàng)建的IE窗口,查找按鈕,該按鈕上顯示的文字是“保存”,點(diǎn)擊該按鈕31?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.靜態(tài)Web對象的識別示例:13?2005iSoftSton靜態(tài)Web對象的識別—creationTime,Index,LocationQuickTest可以使用三種類型的順序標(biāo)識符來標(biāo)識對象:索引(index):指示該對象在應(yīng)用程序代碼中相對于其他描述都相同的其他對象的顯示順序。QTP在錄制和執(zhí)行中,為測試對象屬性分配一個值,以便唯一標(biāo)識該對象。該值基于對象在源代碼中的顯示順序。第一個出現(xiàn)的是0。注意,index屬性值是特定于對象的。因此,如果使用Index:=3描述WebEdit測試對象,QuickTest將在頁中搜索第四個WebEdit對象。

位置(location):指示該對象在父窗口、框架或?qū)υ捒蛑邢鄬τ谄渌枋龆枷嗤钠渌麑ο蟮娘@示順序。

QuickTest可以為對象的location測試對象屬性分配一個值,以便唯一標(biāo)識該對象。該值基于對象在窗口、框架或?qū)υ捒蛑邢鄬τ诰哂邢嗤瑢傩缘钠渌麑ο蟮娘@示順序。第一個出現(xiàn)的對象是0。各列值的分配從上到下、從左到右。creationTime(僅限于瀏覽器對象):指示該瀏覽器打開的順序,相對于其他描述都相同的其他打開的瀏覽器。

如果QuickTest不能僅基于測試對象描述唯一標(biāo)識瀏覽器對象,它將為“CreationTime”測試對象屬性分配一個值。該值指示該瀏覽器打開的順序,相對于其他描述都相同的其他打開的瀏覽器。在運(yùn)行會話期間,如果QuickTest不能只是基于其測試對象描述來標(biāo)識某個瀏覽器對象,那么,它將檢查瀏覽器的打開順序,然后使用“CreationTime”屬性標(biāo)識正確的對象。

32?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.靜態(tài)Web對象的識別—creationTime,Index,動態(tài)Web對象的識別—ObjectSpy一個好助手——ObjectSpy通過ObjectSpy可以查看到所需要識別的Web對象的所有屬性值,挑選其中可以唯一識別該對象的一個屬性或多個屬性,對該Web對象進(jìn)行描述。33?2005iSoftStoneInformationServiceCorporation.Allrightsreserved.動態(tài)Web對象的識別—ObjectSpy一個好助手——Ob動態(tài)Web對象的識別—GetROPropertyGetToProperty:Returnsthevalueofthespecifiedpropertyfromthetestobjectdescription.

GetTOProperties:Returnsthecollectionofpropert

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論