資源描述:
《qtp 導入excel文件 讀取excel文件參數(shù)化》由會員上傳分享,免費在線閱讀,更多相關內容在行業(yè)資料-天天文庫。
1、參數(shù)化種類:數(shù)據(jù)表、環(huán)境變量、隨機數(shù)、外部數(shù)據(jù)參數(shù)化1.數(shù)據(jù)表(datatable)方式參數(shù)化a、file-->settings-->run下datatableiterations中設置控制的是數(shù)據(jù)表中global里數(shù)據(jù)的運行方式;global是全局的!當運行方式設置為運行全部或多行時,運行幾行數(shù)據(jù)“程序”就要回放幾次!!不能重新設置!!b、edit-->action-->actioncallproperties-->run下datatableiterations中設置控制的是數(shù)據(jù)表中該actio
2、n里數(shù)據(jù)的運行方式;local是局部的!當運行方式設置為運行全部或多行時,運行幾行數(shù)據(jù)“該action”就要回放幾次!!進一步說明:a、當global有多行數(shù)據(jù)file-->settings-->runOnallRows;action有多行數(shù)據(jù)actioncallproperty->RunOnallRows程序每次運行時,action中的每行都要執(zhí)行一次b、當global有多行數(shù)據(jù)file-->settings-->runOnallRows;action有多條數(shù)據(jù),actioncallproper
3、ty->Run?oneiterationonly而且global的行數(shù)>action的行數(shù),當action執(zhí)行到最后一行后,不管此時global的行數(shù)為幾,下次回放時action都執(zhí)行最后一行!如果global的行數(shù)Runfromrowstorows,就結合上面所說可以理解d、當同一個action中有多個參數(shù)時,且actioncallproperty->RunOnallRows,這個時候每個參數(shù)的數(shù)據(jù)個
4、數(shù)需要相等2.隨機數(shù)(random)參數(shù)化a、可以指定隨機數(shù)的范圍b、可以為該隨機數(shù)指定名稱,同時需要指定該隨機參數(shù)產生新隨機數(shù)的方式。這種情況下該隨機數(shù)可以在別處使用。產生新隨機數(shù)的方式:a、foreachactioniteration迭代運行相同的action隨機數(shù)不變化,運行不同action才重新產生一次隨機數(shù)在一個action保持不變b、foreachtestiteration在每一個測試運行的完整過程,隨機數(shù)保持不變。重復執(zhí)行該測試的時候隨機數(shù)變化,例如在datatable設置的glob
5、al參數(shù)執(zhí)行循環(huán)情況下。在一次系統(tǒng)迭代保存不變c、onceperentiretestrun在整個測試中隨機數(shù)保持不變,相當于只產生一次隨機數(shù)在整個測試中保持不變3.環(huán)境變量(environment)參數(shù)化a、環(huán)境變量的來源有兩種:內部環(huán)境變量和用戶自定義環(huán)境變量。內部環(huán)境變量是QTP默認定義的一組變量,包括一些系統(tǒng)信息、項目信息等,例如:testdir、OS等信息。用戶定義的環(huán)境變量需要用戶自己定義變量名和值,支持從外部導入,格式為XML文件。b、環(huán)境變量做參數(shù)有一定局限性,它對數(shù)據(jù)操作沒有數(shù)據(jù)表
6、靈活,環(huán)境變量用的最多的還是數(shù)據(jù)的共享c、環(huán)境變量做參數(shù)時,每個參數(shù)值都需要指定,而且不能批量生成,所以它有一定的應用場景:當一個test中的不同action需要同樣一個參數(shù),用環(huán)境變量去參數(shù)化常量是個很好的方法;其次就是不同的test需要用到同樣的參數(shù)時,用環(huán)境變量可以很好解決這個問題4.外部數(shù)據(jù)源實現(xiàn)參數(shù)化利用外部數(shù)據(jù)驅動腳本的運行,這是經常用到的方法,這樣可以很方便的組織測試數(shù)據(jù)。相對前三種方法,這種方式數(shù)據(jù)的讀取、控制稍有些麻煩。下面以常見的幾種方式進行說明。a、數(shù)據(jù)文件以excel格式組
7、織用Excel組織測試數(shù)據(jù)是最常用的了。此種驅動可以采用兩種方式,將數(shù)據(jù)Import到DataTab中或是利用com來操縱Excel文件。下面給出這兩種方式的示例代碼。(輸入flight用戶名和密碼)?方式一、導入到DataTable中'獲得數(shù)據(jù)文件路徑,并將數(shù)據(jù)文件導入到DataTable運行表中DataStr="d:data.xls"DataTable.AddSheet("TestData")DataTable.ImportSheet?DataStr,"Sheet1","TestData"w
8、ait1?????'輸入用戶名和密碼?Fori=1toDataTable.GetSheet("TestData").GetRowCount?systemutil.Run"D:ProgramFilesQuickTestProfessionalsamplesflightappflight4b.exe"?DataTable.SetCurrentRowi?'把i設置為當前執(zhí)行行?UserName=DataTable.Value("UserName","TestData")?Pa